用VHDL 设计电子线路

用VHDL 设计电子线路
作 者: Stefan Sjoholm&Lennart Lindh 边计年
出版社: Prentice Hall/Pearson
丛编项: VHDL 与集成电路设计丛书
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: VHDL
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《用VHDL 设计电子线路》作者简介

内容简介

在电子线路设计领域中,设计自动化工具已经逐步为设计者所接受,它必将取代人工设计方法,成为主要的设计手段。目前,VHDL已成为许多设计自动化工具普遍采用的标准化硬件描述语言。掌握VHDL语言,用VHDL语言设计电子线路,是电子线路设计者必须掌握的基本技能。VHDL语言功能强,覆盖面大,灵活性高,便对于初学者来说,用VHDL语言描述电路有很大难度。为解决这个问题,本书除了介绍VHDL基本语法和基本概念之外,还从实际需要出发,着重介绍了各种不同电路结构的描述方法,介绍了目前广泛流行的几种实用综合工具的不同要求,有利于读者很快学会使用VHDL描述实际电路,具有很好的实用性。本书可作为高等学校计算机和电子工程专业的教材,也可供有关工程技术人员学习和参考。

图书目录

序言

译者序

1 概 述

1. 1 为什么要用VHDL

1. 2 开发流程

1. 3 历史

1. 4 综合

习题

2 VHDL简介

2. 1 VHDL语言的抽象

2. 1. 1 模拟

2. 1. 2 描述电子线路的其他语言

2. 2 设计层次--降低复杂性

2. 3 VHDL元件

2. 3. 1 实体

2. 3. 2 结构体

习题

参考文献

3 并行VHDL

3. 1 信号赋值

3. 2 传输延迟与惯性延迟

3. 3 并行性

3. 4 8时间

3. 5 when语句

3. 6 with语句

3. 7 多路器行为模型实例

3. 8 类属

3. 9 断言语句--VHDL中的出错处理

3. 10 行为与数据流

3. 11 对象. 类和类型

3. 11. 1 数据类型

3. 11. 2 可综合的数据类型

3. 12 向量赋值

3. 12. 1 位串文字

3. 12. 2 数组的片

3. 12. 3 连接运算

3. 12. 4 聚合

3. 12. 5 类型限定

3. 13 高级数据类型

3. 13. 1 子类型

3. 13. 2 多维数组

3. 13. 3 记录

3. 14 别名

3. 15 关系运算符

3. 16 算术运算符

3. 17 初值

习题

4 顺序VHDL

4. 1 并行的和顺序的数据处理

4. 2 信号与变量的赋值语句

4. 3 进程语句

4. 3. 1 组合进程

4. 3. 2 时钟进程

4. 4 if语句

4. 5 case语句

4. 6 多次赋值

4. 7 null语句

4. 8 wait语句

4. 9 loop语句

4. 9. 1 forloop

4. 9. 2 while loop

4. 10 延缓进程

4. 11 预定义信号属性

4. 12 时钟进程中不同的时钟描述方法

4. 13 异步复位和同步复位

4. 13. 1 异步复位

4. 13. 2 同步复位

4. 14 锁存器

习题

5 设计库. 程序包与子程序

5. 1 设计库

5. 2 程序包

5. 3 子程序

5. 3. 1 过程

5. 3. 2 函数

5. 3. 3 决断函数

5. 4 重载

5. 5 类型转换

5. 6 移位操作

习题

6 结构VHDL

6. 1 元件说明

6. 2 元件指定

6. 3 端口匹配命令

6. 3. 1 无连接输出

6. 3. 2 无连接输入

6. 4 类属匹配命令

6. 5 生成语句

6. 6 配置

6. 7 直接例化(VHDL-93)

6. 8 程序包中的元件

习题

7 RAM与ROM

7. 1 ROM

7. 1. 1 使用数组常量

7. 1. 2 例化一个指定工艺的ROM

7. 1. 3 总结

7. 2 RAM

7. 2. 1 使用寄存器

7. 2. 2 例化RAM

习题

8 测试墓准

8. 1 不同级别的测试基准

8. 2 上拉或下拉

8. 3 几个元件用同一个测试基准

8. 4 波形发生器

8. 5 TextIO

习题

9 有限状态机

9. 1 Moore型状态机

9. 2 Mealy型状态机

9. 3 Mealy型和Moore型状态机的变种

9. 4 直接把状态作为输出信号的状态机

9. 5 用时钟同步输出信号的Moore型状态机

9. 6 用时钟同步输出信号的Mealy型状态机

9. 7 状态编码

9. 8 剩余状态

9. 9 如何写出最合适的VHDL状态机描述

9. 10 异步状态机

习题

10 寄存器传输级综合

10. 1 优化和映射

10. 2 约束条件

10. 2. 1 定义时钟输入信号

lo. 2. 2 定义输入和输出延迟

10. 2. 3 假通路

10. 2. 4 面积约束

10. 2. 5 设计约束

10. 3 最好情况的优化

10. 4 综合工具达不到优化目标时应采取的措施

10. 5 小结

11 设计方法学

11. 1 自顶向下的设计流程

11. 2 验证

11. 2. 1 各种级别模拟的小结

11. 2. 2 模拟速度

11. 2. 3 形式验证

11. 2. 4 验证方法推荐

11. 3 写出可综合的寄存器传输级VHDL代码

11. 4 FPGA

12 测试方法学

12. 1 扫描设计方法学

12. 1. 1 多路扫描

12. 1. 2 时钟扫描

12. 1. 3 电平敏感扫描设计

12. 2 全扫描和部分扫描

12. 3 ATPG设计规则

12. 3. 1 写出可测电路的VHDL代码

12. 4 边界扫描

12. 5 附加测试向量

13 样机的快速研制

13. 1 简介

13. 2 实时核心电路简介

13. 3 开发系统

13. 4 开发步骤

13. 5 进一步阅读

14 VHDL设计中的常见错误及其避免方法

14. 1 信号和变量

14. 2 逻辑综合和敏感信号表

14. 3 buffer模式和内部虚拟信号

14. 4 保留字downto和to的用法

14. 5 不完全定义的组合进程

15 设计举例和设计技巧

15. 1 加法器

15. 1. 1 带进位输入的1位加法器

15. 1. 2 带进位输入的8位加法器

15. 1. 3 带进位的通用加法器

15. 1. 4 长度为4的向量加法/减法器

15. 2 向量乘法器

15. 3 资源共享

15. 3. 1 能够共享一个加法器的例子

15. 3. 2 不能共享同一个加法器的例子

15. 4 比较器

15. 5 多路选择器和译码器

15. 5. 1 2选1多路选择器

15. 5. 2 8选1多路选择器

15. 5. 3 3到8译码器

15. 6 寄存器

15. 6. 1 带异步复位的触发器

15. 6. 2 带同步复位的触发器

15. 6. 3 带异步复位和置位的触发器

15. 6. 4 带使能和异步复位的8位寄存器

15. 7 边沿控制的脉冲发生器

15. 8 计数器

15. 8. 1 带使能和进位输出的3位计数器

15. 8. 2 增1/减1计数器(3位)

15. 8. 3 并行加载的通用(带有类属参数)增1/减1计数器

15. 9 移位寄存器

15. 9. 1 串行输入数据/并行输出数据的移位寄存器(4位)

15. 9. 2 并行加载/串行输出的移位寄存器(4位)

15. 10 滤波器

15. 10. 1 多数决定的数字滤波器(4输入)

15. 10. 2 数字加法滤波器(4输入)

15. 11 分频器

16 开发工具

16. 1 Synopsys

16. 1. 1 VHDL编译器和设计分析器

16. 1. 2 设计元件库

16. 1. 3 设计编译器

16. 1. 4 ATPG工具

16. 1. 5 FPGA编译器

16. 1. 6 VHDL模拟器

17 行为综合

17. 1 简介

17. 1. 1 术语简介

17. 2 握手信号

17. 2. 1 单向握手信号

17. 2. 2 双向握手信号

17. 3 行为综合/RTL综合的实例-FIR滤波器

18 实验指示书

18. 1 使用ViewLogic工具作实验

18. 2 使用ViewLogic综合工具和Mentor Graphics的VHDL模拟器作实验

18. 3 Synopsys用户的Script文件

18. 4 实验作业

19 解 答

19. 1 部分习题的解答

第1章

第2章

第3章

第4章

第5章

第6章

第7章

第8章

第9章

19. 2 针对Synopsys和Autologic 2的实验解答

实验1

实验2

实验2 附加练习

实验3

实验3 附加练习

实验4

实验4 附加练习

实验5

实验6

实验6 附加练习

实验7

实验8

19. 3 针对VIEWLOGIC的实验解答

实验1

实验2

实验2 附加练习

实验3

实验3 附加练习

实验4

实验4 附加练习

实验5

实验6

实验6 附加练习

实验7

实验8

附录A VHDL语法

A. 1 库单元

A. 1. 1 实体说明

A. 1. 2 结构体

A. 1. 3 程序包说明

A. 1. 4 程序包体

A. 1. 5 配置说明

A. 2 说明

A. 2. 1 别名说明

A. 2. 2 属性说明

A. 2. 3 元件说明

A. 2. 4 常量说明

A. 2. 5 文件说明

A. 2. 6 信号说明

A. 2. 7 子程序说明

A. 2. 8 子程序体

A. 2. 9 子类型说明

A. 2. 10 类型说明

A. 2. 11 变量说明

A. 3 顺序语句

A. 3. 1 assert语句

A. 3. 2 case语句

A. 3. 3 exit语句

A. 3. 4 if语句

A. 3. 5 loop语句

A. 3. 6 next语句

A. 3. 7 null语句

A. 3. 8 return语句

A. 3. 9 信号赋值语句

A. 3. 10 变量赋值语句

A. 3. 11 wait语句

A. 4 并行语句

A. 4. 1 assert语句

A. 4. 2 block语句

A. 4. 3 元件例化语句

A. 4. 4 generate语句

A. 4. 5 process语句

A. 4. 6 信号赋值语句

A. 4. 7 with select语句

A. 4. 8 when else语句

附录B VHDL程序包

B. 1 标准程序包

B. 2 IEEE程序包

B. 2. 1 std_logic_1164

B. 2. 2 std_logic_unsigned

B. 2. 3 std_logic_signed

附录C VHDL-87关键字

附录D VHDL-93增加的关键字

英汉词汇对照表