本帖最后由 小梅哥 于 2014-11-10 12:37 编辑
设计定义:
设计用途
设计功能
设计接口
设计电压,温度,工作环境等
设计工作频率;
设计输入:
HDL (VHDL 、Verilog, SystemC,SystemVerilog)
网表 – IP core
原理图 — simple (采用原理图的形式调用各类逻辑门和IP Core,通过连线的方式组成设计需要的电路)
其中,HDL方式和IP core方式最为常用,原理图方式一般在设计中不采用。
功能仿真:
逻辑综合:
实质:就是将HDL语言转化为门级网表的过程。
类比,GCC工具可以将C语言转化为可以执行的二进制程序一样。
综合策略:面积(area)和速度(speed)。以增加电路规模换取速度上的提升,以牺牲速度减小电路规模。比如同一个电路,我综合成为100个门级电路,跑到100Mhz,我也可以综合成200个门级电路,可以跑到200Mhz。
综合后仿真:
综合后仿真与功能仿真的差别在于综合后仿真加入了cell延时信息。
布局布线:
后仿真:
静态时序分析:
板上调试:
以上通过简单的图形方式介绍FPGA设计流程各个环节的基本情况,实际在设计的过程中,采用FPGA
厂 家提供的工具,如Altera 公司的Quartus II和Xilinx公司的IES,能够非常简单方便的实现以上设计流程。为了更加直观展示一个完整的设计流程,这里以一个最基础的实验,按键控制LED灯为例,来进行一次完整的设计开发。由于实验较为简单,因此将不包含静态时序分析和板级在线调试的部分。
一、设计定义:
设计一个按键控制LED灯亮灭系统,要求使用四个独立按键控制4个LED灯的亮灭,当某按键被按
下时(如Key[1]被按下),则对应的LED灯(LED[1])被点亮,释放按键,则对应LED熄灭。
设计包含一组4bit的按键输入端口和一组4bit的按键输出端口。
二、设计输入
2.1创建新的Quartus II 工程
双击桌面图标,打开Quartus II软件(图略)
打开Quartus II软件后,会显示如图2-1-1所示的主界面:
我们可以直接在该界面蓝色窗口中选择Create a New Project(红色框选中处)来创建一个新的工程,也可以将该蓝色窗口关闭(点击蓝色窗口右上方的小叉),然后在Quartus II软件中选择Files – New Projest Wizard来打开新建工程向导。如图2-1-2所示:
点击New Project Wizard 后会弹出以下界面,直接点击Next
按照图中的提示,输入你自己的工程路径、工程名称和工程顶层实体名。其中,路径中一定不能包含有中文字符和空格,因为QuartusII软件对这些是无法解析的,会出错。工程名称和顶层实体默认为相同,也必须为英文,不得含有中文或空格符号,然后点击Next;
添加已有文件到工程中,如果你已经有写好的代码需要添加到本工程中,可以在这里添加该文件,当然,即使这里不添加也可以,因为后面我们还可以在工程文件窗口中手动添加文件。这里我们不需要添加文件,因此直接点击next;
选择目标器件,根据你的开发板的使用的芯片选择对应的芯片。左上方红色框圈出的为器件系列,包含了Altera公司很多的系列芯片,这里,我们选择我们开发板上使用的芯片系列,Cyclone IV E系列。右上方红框圈出的地方为器件筛选选项,在这里选择合适的筛选选项对于选择正确的器件能够提供很大的便利。第一个Package为器件封装,包含有TQFP、FBGA等封装,我们开发板上使用的为TQFP的封装,因此这里选择TQFP封装,第二行Pin Count为引脚数量,这个可选项与芯片封装有关,我们开发板上的芯片为144脚的芯片,因此这里选择144;第三行为速度等级,表示该芯片能够工作的最高速度,该数值越小,表明该器件的速度越快,即性能越好。在这里我们选择使用最普遍的C8速率的芯片,因此这一行选择8。
当我们设置完以上三个筛选选项后,我们法相下方列出的可选器件数量已经大大减少,列表中第一行列出的EP4CE6E22C8即为我们开发板上使用的器件,因此这里我们直接选中该芯片,然后点击Next即可。在这个列表中,列出了每个芯片所包含的资源,包括核心电压(Core Voltage)、逻辑单元数量(LEs)、用户IO数量(User I/Os)、存储器数量(Memory Bits)、9位硬件乘法器、时钟管理单元(锁相环)、和全局时钟单元。这些资源数量越多,表示该器件的规模越大,能够实现的电路越复杂,但是同时价格也会越高。因此,我们需要合理选择器件,来使我们的设计能够有最高的性价比。
当器件选择完毕后,我们需要选择我们的验证工具,即仿真工具,为了支持功能齐全的仿真验证,Altera公司推荐使用第三方仿真软件,如modelsim。其中,Altera公司也提供了modelsim的一个OEM版本,被称为Modelsim-Altera,该仿真软件能够更好的支持Altera公司的器件的仿真,而且是完全免费的,因此这里推荐一般的学习和应用中使用Modelsim-Altera作为仿真验证工具。具体设置如下图,Simulation一栏中,tool name选择modelsim-Altera,format(s)选择Verilog HDL。其它选项暂时可不用修改,选择None即可。当此两处设置完成之后,我们可以点击Next,到下一个页面后点击Finish来完成整个工程的创建,也可以直接在此处点击Finish来完成工程的创建,因为最后一页上没有任何需要设置的地方,因此这里我们一般就可以直接点击Finish了。
通过以上几步,我们的一个工程就建立好了,接下来,我们将进行设计的输入。
首先我们点击Files – New来打开新建文件选择卡,新建文件选项卡如下所示,
余下内容请参看“小梅哥和你一起深入学习FPGA之FPGA设计流程(下)”