计算机硬件描述语言(VHDL)与编程语言(C语言)的区别及关系,

好的,我会狂加分!

最佳答案
本回答由提问者推荐

2010-06-12 回答
首先说VHDL:它是描述电路的计算机工具,早期的CPLD等器件是基于与-或阵列的,更容易说明这点,VHDL是描述电路行为的,当下载到器件后,它就是具体的电路,这个电路全由与-或阵列组成。后期的FPGA也一样,只是它是基于查找表的。再说C语言:我们可以认为它是用于控制特定电路的工作。我们都知道可以C编程的控制器都有程序存储器,它里面就存放了C编译后的二进制代码。而VHDL里下载后根本就不需要这个存放程序的地方。
追问:
制作电路板是否用到VHDL.
追问:
你能不能帮我解释硬件为什么可以读出二进制数字
追答:
首先,制作电路板(也就是PCB)不需要用到VHDL。第二个问题,我们都知道数字信号是用电平表示的高1低0(正逻辑),所以读二进制数,其实就是看电路的电平。
追问:
第一个问题:制作不用到,那设计应该用到吧,第二个问题可不可以说明白阿
追答:
当然我们如果电路中有CPLD/FPGA等器件。那么肯定会用到硬件描述语言但不一定是VHDL,还可以是Verilog HDL等。因为如果没有对这些器件编程,它就没有功能。第二个问题嘛,其实你只要知道存储器的读写,就会明白了。每个器件都有工作电压,或资源电压,如果忽略器件内部的电压损耗的话,读到的二进制就是这些。
追问:
010010001 0111000111001001 010100010 这样的数字可以代表要硬件工作的指令? 电压?
追问:
电压的不同指令也变?这不是要用到变压器吗?
追答:

第一个问题:关于010010001这样的数字,它是可以代表硬件工作的指令的,

实际程序存储器里存放的就是这样一些二进制数。当然它在电路中是以电压的形态存在的。

第二个问题:关于电压(电平),是否用变压器,

你可以看看TTL与CMOS电平之间的是怎样交互的。

关于这些问题,你可以参考数字电路微机原理两本书。

 

追问:
再问你最后二个问题。一:有人说做硬件工资是做软件的三倍。是真的?二:我在手机按几个数为什么就会固定传到对方那里
追答:

1.工资问题,这个我不好说,有人那样说,肯定有他的道理。

2.这里是编码格式的问题,举个例子说:我们可以用00000001表示1,用00000010表示2.

这就是一种编码,但是手机里用的什么样的编码,我也不清楚,但道理是一样的.

手机以一种编码格式发送一串数字,另一手机接收到,对比后就得到了一串相同(固定)的数字

最新回答 (1条回答)

小虎 10级
2010-06-06 回答

硬件描述需要夸大其词。软件编程需要短小精干    但两个又不可能分开,最后联合在一起骗买的人!

追问:
不会,你就别乱说,你还是去看我的问题“大事”吧,对你有用的
追答:
呵呵!这问题,不会有别人比我回答的更精辟了,看来你只是IP业的小学生,等你弄明白我问题的意思,你才真正了解IP业。
追问:
那我问你,应用软件的代码是写在一起好,还是分开,。还要说明为什么?
追答:

当然是要分开写,首先应用软件一般不会只是一个人在遍写,一个人也不可能写出来,在一个是出于保密的目的,部分关键源代码需要做特殊处理,我不是软件的行家,所以我知道的不多,我这样回答你问题,真正目的不是为了你的问题而回答,而是针对你的问题笼统的说了一下硬件和软件之间的关系,如果你理解不了我答案的意思,我举个列子看看你看的明白不?

如:为什么你购买回来的硬盘和你实际购买的容量不一致?是误差吗?如果是误差为什么只有少没有多?

这个问题弄明白,就知道我答案的真正意思了。(不要去网上搜,自己试着分析一下)

追问:
嗯,有两下子。但代码分开的目的是为了提高效率,而且这样的话,也比较容易的对其进行修改和维护。 你能不能说硬件语言阿?我不明白硬件为什么可以读出二进制数字,工程师到底在里面方了些啥?
追答:
具体的我说不上来,没有这方面的研究。
追问:
哎呀,你懂什么,谈你专业,拜托,是不是硬件范畴的
追答:
你说的我真不懂,我都是瞎说的
追问:
你的学历是大一吗
追答:
小姐! 饶了我好吗,我只是想要分而已,我没有那么专业,我也没上过大学,我也就是将就你的问题,对硬件和软件的关系发一下牢骚罢了。