CODE_FPGA&CPLD

  1. FPGA(Feild Programmable Gate Array)现场可编程门列阵。属于可编程逻辑器件的一种。到目前为止已经成为实现数字系统的主流平台之一。
  2. PLD(Programmable Logic Device)可编程逻辑器件。它的主要特点就是允许用户通过软件对其进行配置和编程,从而完成某种特定功能,且可以反复进行擦写。
  3. 在修改和升级PLD时根本不用重置PCB电路板,仅仅需要在计算机上重新书写PLD程序。
  4. FPGA为易失性器件,掉电后配置数据会失去,因此每次上电后需要重新进行配置。
  5. 将典型的单元电路封装起来构成固定的单元电路。
  6. 设计人员应该考虑如何将可组装的软件包和软件库搭建出满足需求的功能模块甚至完整的系统。
  7. EDK(Electronic Design Automation)工业设计自动化
  8. 由于FPGA需要反复的被烧写,所以不能够使用固定的与非门,查找表是一种很好的实现方式。
  9. 通过烧写文件改变查找表,实现对于FPGA的反复配置。实现了在相同电路情况下实现了不同的逻辑功能。
  10. 查找表本质上就是一个RAM。自己理解:综合器根据用户输入的HDL语言,将相应的逻辑电路转化为真值表,输入作为地址,然后查找真值表,将相应的内容输出即可。
  11. 可编程输入输出单元IOB,是芯片与外界电路的接口部分,完成不同电气特性下对输入输出信号的驱动与匹配要求。
  12. CLB是FPGA内的基本逻辑单元。
  13. 软核在EDA设计领域指的是寄存器传输级模型。在FPGA设计中指的是对电路的听见描述语言,包括逻辑描述、网表和帮助文档等。
  14. HDL是以文本形式来描述数字系统硬件结构和行为的语言。
  15. FPGA 器件基于SRAM结构来实现可编程特性,具有集成度高、逻辑功能强等特点,但掉电后编程信息会立即丢失,芯片在每次上电之后都需要重新下载设计文件所生成的的配置数据。
  16. 如何快速高效的将配置文件写入目标器件,如果在掉电再上电后能够自动可靠的恢复配置文件,是整个系统的关键。
  17. ISE以工程为单位对设计输入进行管理,因此首先需要建立ISE工程,然后再新建HDL文件输入HDL代码,或者新建并在HDL文件中实例化IP核。
  18. 所谓综合就是将HDL语言、原理图等输入设计翻译成与或非门和RAM触发器等基本逻辑单元的逻辑连接,并根据目标和约束条件优化所生成的逻辑连接,生成EDF文件。
  19. Very High Speed Integrated Circuit.Hardware.Description.Language.(VHDL)
  20. VHDL打破了软硬件的壁垒。是电子系统设计者和EDA工具之间的界面。
  21. C、C++代替汇编等语言。VHDL代替了原理图、状态转换图。
  22. RegisterTranslateLevel(RTL)
  23. VHDL包括基本的四样:实体、结构体、配置文件、库,程序包。
  24. 实体:描述了设计单元的输入输出。是设计实体经过封装之后对外界的一个通信界面。
  25. 结构体:定义了设计单元的具体功能,描述了设计电源的行为、元件和内部的连接关系。
  26. VHDL中有常量、变量、信号、文件自中类型。
  27. 如果实体内部需要反馈输出信号,则需要将信号定义为buffer而不是out。一个实体可以对应多个结构体,同一时刻只能有一个结构体起作用。通过configuration决定使用那个结构体进行仿真或综合实验。
  28. 在结构体中的执行是同时进行的,执行顺序与书写顺序无关。
  29. 进程语句定义顺序语句模块,用于将从外部获得的信号或内部的运算数据向其它信号进行赋值。
  30. 进程本身是并行的,但是内部的语句是顺序的。进程只有在特定的时刻才能够被激活,比如敏感信号被触发的时候。
  31. 元件例化语句
    • 元件例化引入一种连接关系,将预先设计好的实体定义为元件,并将此元件与当前设计实体中的端口相连接,从而为当前设计实体,引入一个新的低一级的设计层次。
  32. 在结构体中的执行是同时进行的,执行顺序与书写顺序无关。
  33. 进程语句定义顺序语句模块,用于将外部获得的信号值或内部的运算数据向其它的信号进行赋值。
  34. 假定主存可以在一个时钟周期内完成一次存取操作,而且可以和CPU同步工作。系统使用同一个主存单元。指令读取和数据访问都使用同一组存储器。