fpga和单片机的区别
时间:10-28 09:42 阅读:1649次
*温馨提示:点击图片可以放大观看高清大图
简介:fpga是什么?fpga和单片机的区别 FPGA是Field Programmable Gate Array的简称,中文名称为现场可编程门阵列,是一种可编程器件,是在PAL(可编程逻辑阵列)、GAL(通用阵列逻辑)、CPLD(复杂可编程逻辑器件)等传统逻辑电路和门阵列的基础上发展起来的一种半定制电......
fpga是什么?fpga和单片机的区别
FPGA是Field Programmable Gate Array的简称,中文名称为现场可编程门阵列,是一种可编程器件,是在PAL(可编程逻辑阵列)、GAL(通用阵列逻辑)、CPLD(复杂可编程逻辑器件)等传统逻辑电路和门阵列的基础上发展起来的一种半定制电路,主要应用于ASIC(专用集成电路)领域,既解决了半定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA是以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。
系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。
FPGA一般来说比ASIC(专用集成电路)的速度要慢,实现同样的功能比ASIC电路面积要大。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。另外一种方法是用CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。
写完程序综合后,芯片内部相当于生成这样一个电路
再说单片机:
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
可以理解为在小电脑上写程序,其思路也跟电脑编程相同,追求算法效率和程序稳定性。目前IAR和MDK编译器 支持 C和C++语言,对于CS的小伙伴来说上手是比较轻松的。