1 / 24

数字电路大作业交流

数字电路大作业交流. 仪 01 班 000643 耿俊清 000673 刘 洋 000670 方丽丹. 心得和体会. 分工与协作 VDHL 程序的一些特殊之处 VHDL 语言与数字电路基础之间的关系. 分工与协作. 最能体现团队协作优势、简单易行的方式是并行分工. 项目第一阶段. Part 1.1. Part 1.2. Part 1.3. 项目第二阶段. Part 2.1. Part 2.2. Part 2.3. 综合. 串行分工. 会造成一些人力资源的浪费。尤其是在每个人的能力相差不多的情况下. 阶段 1. 阶段 2. 阶段 3.

hyman
Download Presentation

数字电路大作业交流

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数字电路大作业交流 仪01班 000643 耿俊清 000673刘 洋 000670 方丽丹

  2. 心得和体会 • 分工与协作 • VDHL程序的一些特殊之处 • VHDL语言与数字电路基础之间的关系

  3. 分工与协作 • 最能体现团队协作优势、简单易行的方式是并行分工 项目第一阶段 Part 1.1 Part 1.2 Part 1.3 项目第二阶段 Part 2.1 Part 2.2 Part 2.3 综合

  4. 串行分工 会造成一些人力资源的浪费。尤其是在每个人的能力相差不多的情况下 阶段1 阶段2 阶段3 阶段4

  5. 两者混合使用 整体设计上采用并行方式,模块实现时辅以串行方式。 项目第1阶段 Part 1.1 Part 1.2 Part 1.1.1 Part 1.1.2

  6. 并行分工需要注意的问题 • 相容性 每个part最后要能完美无缺的融入整体中。 Entity 功能 管脚 输出类型 输入类型

  7. 并行分工需要注意的问题 • 每个人都要有一定的全局概念。能够清晰的知道自己负责部分在整体中的地位、作用等。 • 分解功能时的技巧。 • 按照功能模块划分。(效率比较低,对成员协作意识要求不高,要求成员能力大致相同) • 按照基本模块划分。(效率高,但每个成员都要有很强的协作意识,成员可以有较大的能力差别)

  8. VHDL写作中需要注意的问题 Very-high-speed integrated circuit hardware description language 在写作过程中要注意 VHDL与数字电路的联系

  9. 优点 • 集成度高 • 开发快速 • 不用化简卡诺图 • 修改方便 • ……

  10. 问题一:可仿真但不能综合下载 Comp.lang.vhdl 93版 MAX+PLUS:凡是支持的语言必然可以编译,凡是可以编译的必然可以下载。 有很多高级特性不支持 可以使用Mentor Graphics,支持VHDL93但不一定可以下载,可以将VHDL转化为原理图、流程图等。可用于分析系统。

  11. 问题二:需要大量的逻辑单元 entity b is port( a0,a1,b:in std_logic_vector(3 downto 0); sel:in std_logic; result:out std_logic_vector(7 downto 0)); end; architecture arch of b is begin process(a0,a1,b,sel) begin if sel='0' then result<=a0*b; else result<=a1*b; end if; end process; end; Total logic cells required: 69

  12. entity a is port( a0,a1,b:in std_logic_vector(3 downto 0); sel:in std_logic; result:out std_logic_vector(7 downto 0)); end; architecture arch of a is signal temp:std_logic_vector(3 downto 0); begin process(a0,a1,b,sel) begin if sel='0' then temp<=a0; else temp<=a1; end if; result<=temp*b; end process; end; Total logic cells required: 34

  13. 结构图 A1 0 1 * B Result * A2 SEL 0 1 A1 Result * Temp A2 B SEL

  14. IF语句引起的问题 • 系统在综合的时候遇到if语句不完全判断的情况,会自动创建一个寄存器保存输出的原始值。 Process(a1,b1) Begin if a1>b1 then q<=‘1’; elsif a1<b1 then a<=‘0’; end if; End process; 这样会导致逻辑器件的浪费,尤其是在process很复杂的时候(如if嵌套),即使MAXPLUS进行自动优化也无法消除。

  15. 问题三:出现“莫名其妙”的错误 • 大家最常见的问题: • 多重驱动 • 过程(process)太复杂

  16. 多重驱动 在VHDL中signal就是电路图中的连线 模块1 Signal A 模块2

  17. 改进措施: • 用中间变量代替,最后经判断再赋值给信号输出。 • 把1个process拆成两个process,再写一个其他语句决定输出。

  18. 一个进程中只能有一个沿检测语句,其他的都只能监测电平。一个进程中只能有一个沿检测语句,其他的都只能监测电平。 • 沿检测的过程: • 检测敏感信号在一段时间(δ)内发生变化。 • 检测敏感信号又过了一段时间(δ)后的逻辑状态。

  19. VDHL与数字电路基础的关系 • 可以比作高级语言与组合语言(汇编语言)的关系。 • 知其然与知其所以然。 • 只有熟知数字电路基础知识才能写出高质量的VHDL代码。 • 开发小的应用实例时,基本逻辑器件有着造价低廉等优势。

  20. MAX+PLUS中不被大家注意的功能

  21. Fast:系统在综合时,将会按芯片运行的最快速度优化用户设计,而不是占用芯片资源情况。Fast:系统在综合时,将会按芯片运行的最快速度优化用户设计,而不是占用芯片资源情况。 Normal:系统综合时尽量利用芯片的可用资源。 WYSIWYG:保持用户所设计的各种逻辑关系,对于一些不必要的逻辑内容也予保留。 Optimize:用于可以调节滑块,以自定义自己的要求。 area:优先资源占用;speed:优先运行速度。

  22. Fast • Total logic cells required: 524Total flipflops required: 93 • WYSIWYG • Total logic cells required: 1447 • Total flipflops required: 93

  23. Slow slew rate:减缓信号的跳变速度,当许多输出信号同时发生变化时,选择此项将会缓解由于跳变引起的噪声。 XOR synthesis:系统会自动创建一些异或门来化简逻辑。

  24. 谢谢大家 祝大家考试顺利

More Related