我是VHDL/FPGA编程的初学者.我想比较两个32位std_logic_vector的.我目前正在使用:
if ( RX_FRAME(to_integer(s_data_counter)).Data /= REF_FRAME(to_integer(s_data_counter)).Data ) then
s_bad_frame <= '1';
state <= DONE;
end if;
Run Code Online (Sandbox Code Playgroud)
这里RX_FRAME和REF_FRAME是2个的阵列std_logic_vector(31 downto 0)
我想知道综合工具如何转化/=为硬件.是否可以使用它?或者我应该做一个XOR有关的向量并检查结果向量对零?如果我执行XOR并检查零,是否会增加所需的硬件数量?我使用的是Vivado Design Suite 2015.3.
一个真正的模式程序可以写入任意内存区域,损坏硬件吗?这个场景中不包括中断调用或其他可以在实模式下完成的事情 - 只是纯粹写入内存.
这个页面显示了x86系统的内存映射,我看到了BIOS数据区等内容; 所以我担心写入这个区域可能会对BIOS进行持续更改,或者至少将BIOS设置更改为意外值.可能是更多可以销毁的东西.
我经常读到实模式下的硬件访问会破坏硬件; 但他们没有解释必须要做的情况.
由于我只询问在不调用中断的情况下编写访问权限,我的主要问题是,如果对内存的更改可以进行持久的更改; 如果是的话,哪个以及为什么?
我正在努力学习VHDL并努力学习它的一些基础知识.问题如下:
Process语句被描述为包含顺序运行的代码(一行接一行).我想问为什么不能在进程语句中运行并发代码(意味着所有行并行执行).其次,如果流程语句包含顺序代码,那么它如何建模,例如,三个触发器同时进行,例如,
- 内部流程声明
Q1 <= D1;
Q2 <= Q1;
Q3 <= Q2;
Run Code Online (Sandbox Code Playgroud) 我一直在寻找一个开始学习嵌入式系统设计/编程的好地方,虽然所有人都建议使用Arduino和RaspberryPi这样的初学设备,但我从未见过任何有关汇编级别编程的建议.我最近完成了计算机科学学士学位,但我越来越多地被硬件而不是软件编程所吸引.我参加了一个硬件设计课程,我们在Logistic中进行了68k和逻辑设计的汇编编程.我有一个Raspberry Pi,并且已经搞砸了一些,但是用于这些设备的语言仍然是更高级别(C,C++,Python).
所以我有一些问题,因为我真的对芯片/计算机硬件的低级设计感兴趣:
汇编语言在今天的硬件设计中有哪些应用?它是否仍被广泛使用或大多数是由更高级别的语言抽象出来的?
如果它仍然被广泛使用,那么什么类型的工作涉及装配编程?什么是最流行的汇编编程平台(68k,x86等)?
最后,如果上述情况适用,现代大会节目的一些资源是什么?
谢谢,我再次看了一些关于深入嵌入式系统的其他问题,所以我希望我的问题有很大的不同,但如果我的问题已经得到解答,请随时提出这个问题!