打开QuartusII软件,程序主界面如下:

1, 新建一个工程

点击File——>New Project Wizard,打开创建新工程向导,这里你将完成工程的基本设定选项。

1, Project name and directory——工程的名称与目录

2, Name of the top-level design entity——顶层设计实体的名称

3, Project files and libraries——项目文件与库

4, Target device family and device——目标设备的族类

5, EDA tool settings——EDA工具设定

这里一般设定好工程名称和目录,顶层设计实体名称以及目标设备族类就可以了,其他的暂时直接使用默认项就可以了。

2, 新建一个设计文件

通过点击File——>New打开新建文件选择框,由于我们这里使用原理图描述实现的,则文件类型选择Design Files——>Block Diagram/Schematic File,就新建了一个原理图文件,将其保存起来,注意命名要跟前面设置的顶层设计实体名称相同。

3, 编写设计文件

接下来开始在文件中绘制原理图,这里首先完成与门的添加,点击左侧工具栏中的Symbol Tool按钮,打开Symbol选择框,选择primitives——>logic——>and2,点击OK后即可在原理图中添加一个2输入的与门了。在同样通过Symbol Tool中的加入和primitives——>pin——>output加入输入和输出引脚,然后在原理图中把他们用Orthogonal Node Tool即导线连接起来,双击输入输出引脚,为他们设定好名字,pinA,pinB,pinC,就完成了原理图中的设计。

4, 编译(分析综合)

点击Processing——>Start——>Start Analysis & Synthesis,进行分析综合,就好像是对程序进行编译,等待片刻,如果没有错误,编译报告会输出出来。

5, 配置管脚

接下来配置管脚,就是设定刚才加入的输入输出管脚与实验板上FPGA芯片外部引脚之间的对应关系,设定好这个,我们设计的与门电路才能通过FPGA外部引脚与实验板上的其他设备连接起来,我们才好观察到电路的设计效果。点击Assignment——>Pins,打开Pin Planner设定框,这里查看实验板的说明文件,我们使用两个拨动开关来连接输入引脚,用一个led灯来连接输出引脚,对照说明中的表格,为pinA,pinB,pinC分配PIN_N25,PIN_N26和PIN_AE23,设定好后点击Assignment——>Device进入设定框,点击Device and Pin Options按钮,在Device and Pin Option框中的Unused Pins标签下将Reserve all unused pins设定为As output drivingground。因为我们的设计最终会以电路的表达形式工作,错误的设计极其容易导致实验板的损坏。

6, 下载程序

当然我们实际设计中可能会用到波形仿真工具进行验证,进行时间分析验证,甚至要设定布局布线等工作,反复迭代修正,才能完成一个复杂电路的设计,不过这里这个与门的demo很简单,完成以上设计工作后,可以开始编译了,点击Processing——>Start Compilation开始吧。如果没有错误,输出编译报告,就可以准备下载到实验板上去了。点击Tool——>Programmer,打开下载工具。这里我们选择使用JTAG的下载方式,注意先给实验板上电,点击Start开始,等待片刻,走完下载进度条,下载完成。

7, 完成

现在你可以在实验板上通过SW0和SW1来设定与门的输入了,实验板上的LEDR0相应的亮或者灭。我们实现的与门在哪呢?就在你面前实验板的芯片中,实际上实验板的芯片中有很多电路单元,通过我们的编程选择我们需要的电路单元用连线连接起来,在通过配置引脚连接到FPGA芯片的外部引脚上,FPGA是焊接在PCB板上的,PCB板上的铜线把FPGA引脚与外部设备比如开关,发光二极管等连接起来,我们的电路就真正的连接到了这个系统当中了。他们之间的连接关系在图中表示出来。

8,总结

经过了这么多繁杂的步骤,我们仅仅完成的是一个简单的与门电路,好在通过这个过程我们只是了解一下FPGA设计的基本过程与简单操作,熟悉了这个流程,以上步骤还是很清楚的,而且实现一个复杂的设计也基本是沿这个过程走的。后面我们用FPGA实现一个CPU也可以这样下载到FPGA芯片当中,这可是一个真正的电路,真正工作的CPU,麻雀虽小五脏俱全,不再是仅仅在电脑上仿真了,你必然会满心欢喜。而且实际中,这样的设计(当然还有一些其他的工作要做),是能够送到工厂中去生产真正的ASIC专用电路,也就是真正的,我们能摸到能使用的CPU,会有这样的一天。

一步一步学做一个CPU——3,用QuartusII通过原理图完成与门电路设计相关推荐

  1. 举个栗子!Tableau技巧(52):学做一个实用的热图日历

    这种图表我们就叫它热图日历,通过方形展示具体日期,通过颜色呈现该日期的数值多少. 通常我们可以将它用作仪表板上的筛选器,来查看月.周.日的详细情况,通过它可以很容易查看具体到每一天的情况. 那么,怎样 ...

  2. 几步教你如何做一个赚钱的自媒体账号,昨天我赚了469

    大周昨天一条视频的单账号收益是469,在这一行里算是赚的比较少的了. 屏幕前的你也想通过做自媒体赚钱?那么你一定要耐心看完本期内容,希望可以给你一些启发和帮助. 我们到底要如何操作才能做出一个能赚钱的 ...

  3. 本科阶段能在FPGA上做一个CPU并运行自己写的操作系统算什么水平?

    hi , 大家好,前几天逛知乎,看到一个比较厉害学生,自己研发完成CPU,操作系统,编译器,编程语言,还用自己设计的编程语言开发了一些应用软件,确实学习能力很强!值得我们学习! 作者:Max Xing ...

  4. Tableau必知必会之学做一个实用的热图日历

    这种图表我们就叫它热图日历,通过方形展示具体日期,通过颜色呈现该日期的数值多少. 通常我们可以将它用作仪表板上的筛选器,来查看月.周.日的详细情况,通过它可以很容易查看具体到每一天的情况. 为方便学习 ...

  5. 你负责健康快乐长大,我负责学做一个合格的妈妈

  6. 自己动手,做个CPU

    纯手工打造一个 CPU 这个事儿. 在电子专业的同学眼里,很容易. 在计算机专业的同学眼里,稍稍有点复杂,有的专业课的实验课可能会带着同学做一个,或者用 Logisim 这样的仿真软件去模拟实现一个. ...

  7. 五年从P5到P8,在阿里学做个靠谱的人

    师兄文化,是阿里的老传统,新人入职都要认个师兄. 不是江湖上这种师兄哈,但帅是一样帅的 今天和大家聊聊我在阿里当师兄的故事. 我是"改之",不是"有则改之无则加勉&quo ...

  8. python做一个小游戏_12岁的少年教你用Python做小游戏

    你有没有想过电脑游戏是怎样制作出来的?其实它没有你想象的那样复杂!在这个教程里,你要学做一个叫<兔子和獾>的塔防游戏,兔子作为英雄,需要在城堡里抵御獾的进攻. 为了写这个游戏的代码,你将会 ...

  9. 如何用css做一个爱心

    摘要:HTML的标签都比较简单,入门非常的迅速,但是CSS是一个需要我们深度挖掘的东西,里面的很多样式属性掌握几个常用的便可以实现很好看的效果,下面我便教大家如何用CSS做一个爱心. 前期预备知识: ...

最新文章

  1. [MaxCompute MapReduce实践]通过简单瘦身,解决Dataworks 10M文件限制问题
  2. 远程挂载 NFS 共享目录引发死机问题
  3. redis缓存失效时间设为多少_java操作Redis缓存设置过期时间的方法
  4. 使用node.js构建命令行工具
  5. python多态_python 多态
  6. OpenGL 深度测试depth test 的实例
  7. 工程师最重要的能力是什么
  8. 计算机机房t4,机房等级-T2-T3-T4-如何划分
  9. 图纸管理软件_造价20万以内的农村别墅长啥样?挑选5套图纸,让城里人羡慕吧...
  10. maven配置sqlServer的依赖
  11. 一般来讲,大公司都有自己的决策团队
  12. python进阶18正则表达式
  13. python基础教程-《Python基础教程(第3版)》PDF高清版
  14. GridView选中,编辑,取消,删除代码
  15. 【通信】基于matlab FDTD法研究移动通信终端电磁辐射对人体的影响【含Matlab源码 761期】
  16. Linux shell:echo显示彩色字体
  17. HTML上下左右布局
  18. 升级mongodb时出现The data files need to be fully upgraded
  19. 记ubuntu20.04无线网卡驱动安装
  20. 10天精读掌握:计算机组成与设计COAD:Patterson and Hennessy 第7天 2018/11.1

热门文章

  1. 平面空间的元素和部分3d空间的元素
  2. 链栈的入栈、出栈、获取长度、获取栈顶值等相关操作
  3. 开设python的大学-2018年,大学应该开设哪些编程语言课程
  4. 【旅游攻略】:帽儿山旅游攻略
  5. kafka的常用命令
  6. ITIM二次开发:Workflow之JavaScriptExtension
  7. VScode快捷键(win + mac)
  8. VMware Horizon View 7 规划部署图解
  9. 服务器 apk文件,Apk文件介绍(一)
  10. 华为mate50鸿蒙,华为Mate50概念图:棱形摄像头+鸿蒙OS,依靠备胎计划还能否翻身...