数字系统设计 Digital System Design

Slides:



Advertisements
Similar presentations
桂林市 2011 年高三第二次调研考 试质量分析暨备考教学建议 桂林市教育科学研究所 李陆桂. 二调平均分与一调、 2010 广西高考英语平均分的比较 科目 类别 英语 文科文科 2010 年广西 一调 二调 与 10 年广西相差
Advertisements

1 I/O 设备访问方式和类型. 2 Overview n The two main jobs of a computer: l I/O (Input/Output) l processing n The control of devices connneted to the computer is.
SOPC技术 数字逻辑电路 主讲:刘昌华 嵌入式技术研究所
专题八 书面表达.
第2章 FPGA/CPLD结构与应用.
第4章 VHDL设计初步.
第八章 可编程逻辑器件 本章的重点: 本章的难点: 1.PLD的基本特征,分类以及每种类型的特点;
Combinational Logic 組合邏輯
Leftmost Longest Regular Expression Matching in Reconfigurable Logic
Unit 4 I used to be afraid of the dark.
Module 5 Shopping 第2课时.
Module 5.
AKA Embedded 开放实验室系列普及讲座之一 FPGA/CPLD的应用和开发简介
Hardware Chen Ching-Jung
存储器与可编程逻辑阵列 刘鹏 浙江大学信息与电子工程学院
- Cellular Phone Content
教師的成長 與 教師專業能力理念架構 教育局 專業發展及培訓分部 TCF, how much you know about it?
数字系统设计 I Digital System Design I
数字系统设计 Digital System Design
第3章 可编程逻辑器件的 工作原理.
数字系统设计 Digital System Design
触发器和时序电路分析 刘鹏 浙江大学信息与电子工程学院 March 30, 2017 ZDMC.
数字系统设计 Digital System Design
– MiNa Material and Machining Lab – 創新的玻璃輔助二氧化碳雷射對矽的加工技術
memory array (2n words by m bits)
5 Computer Organization (計算機組織).
版权所有,禁止未经授权的商业使用行为 何宾 Tel: 北京中教仪装备技术有限公司.
Logistics 物流 昭安國際物流園區 總經理 曾玉勤.
可编程逻辑器件及ASIC简介.
Guide to Freshman Life Prepared by Sam Wu.
memory array (2n words by m bits)
数字系统设计 Digital System Design
微程序控制器 刘鹏 Dept. ISEE Zhejiang University
创建型设计模式.
第 9 章 存储器和可编程逻辑器件 9.1 半导体存储器 9.2 可编程逻辑器件.
第13章 数字电路基础 13.1 数字电路概述 13.2 数字电路中的数值与码制 13.3 逻辑代数 13.4 逻辑门电路
第八章 可编程逻辑器件 8.1 可编程逻辑器件的基本特点 数字集成电路从功能上可分为通用型、专用型两大类。
可编程器件与电子设计自动化 上海交通大学电工及电子技术实验中心 一九九九年三月.
组合逻辑3 Combinational Logic
EDA 原理及应用 何宾
数字系统设计 Digital System Design
Programmable Logic Architecture Verilog HDL FPGA Design
JTAG INTERFACE SRAM TESTER WITH C-LCM
邏輯設計 Logic Design 顧叔財, Room 9703, (037)381864,
时序电路设计 刘鹏 浙江大学信息与电子工程系 Apr. 24, 2011 EE141
Lesson 44:Popular Sayings
数字电路 Digital Circuits 王维东 浙江大学信息与电子工程系 信息与通信工程研究所 March 03, 2009 EE141
第 2 章 数字逻辑电路基础 和计算机中的逻辑部件
Try to write He Mengling Daqu Middle School.
英语教学课件 九年级全.
- Cellular Phone Content
EDA 第二章 可编程逻辑器件.
資料結構 Data Structures Fall 2006, 95學年第一學期 Instructor : 陳宗正.
第七章 可编程逻辑器件 PLD 7.1 PLD 概述 PLD 的电路结构及分类 PLD 的编程工艺及描述的逻辑规则和符号 PLD 的设计过程及主要优点 7.2 只读存储器 ROM 的内部结构 用ROM 实现组合逻辑设计 常用的LSI.
高性能计算与天文技术联合实验室 智能与计算学部 天津大学
计算机问题求解 – 论题1-7 - 不同的程序设计方法
第6章 半导体存储器和可编程逻辑器件 6.1 概述 6.2 ROM(只读存储器) 6.3 RAM (随机存取存储器)
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
虚 拟 仪 器 virtual instrument
半導體原理及應用 (II) 陳志方 國立成功大學 電機工程學系 1/15/06.
存储器和可编程逻辑器件.
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
SoC 與微控制器的發展 朱亞民.
《数字电子技术基础》(第五版)教学课件 清华大学 阎石 王红
第10章 存储器接口 罗文坚 中国科大 计算机学院
《数字电子技术基础》(第五版)教学课件 清华大学 阎石 王红
5. Combinational Logic Analysis
第九章 存储器和可编程逻辑器件 本章主要内容 半导体存储器 只读存储器 随机存取存储器 存储器容量的扩展 可编程逻辑器件
Programmable Logic System Design
电子技术 数字电路部分 第九章 可编程逻辑器件.
Presentation transcript:

数字系统设计 Digital System Design EE141 数字系统设计 Digital System Design ------编程器件 王维东 Weidong Wang 浙江大学信息与电子工程学院 College of Information Science & Electronic Engineering 信息与通信工程研究所 Zhejiang University Winter 2009 ZDMC – Lec. #09

任课教师 王维东 TA: 浙江大学信息与电子工程学院, 信电楼306 邮箱:wdwang@zju.edu.cn EE141 任课教师 王维东 浙江大学信息与电子工程学院, 信电楼306 邮箱:wdwang@zju.edu.cn College of Information Science & Electronic Engineering Zhejiang University, Hangzhou, 310027 Tel: 86-571-87953170 (O) Mobile: 13605812196 TA: 陈彬彬 Binbin CHEN, 13071888906; 15091831397@163.com; 黄露 Lu HUANG,6719473; eliver8801@zju.edu.cn; Tuesday & Thursday 14:00-16:30 PM Office Hours:玉泉信电楼 308室(可以微信或邮件联系). Winter 2009 ZDMC – Lec. #09

Prerequisites预修课程 电子电路基础 电子线路 C语言 How to learn this Course? Not only listening, thinking and waiting …. But Exercise, Simulation, Practice!

课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第5版, 高等教育出版社, 2006. EE141 课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第5版, 高等教育出版社, 2006. 王金明著,数字系统设计与Verilog HDL,电子工业出版社,第5版 补充讲义/期中考试前预备 Stanford 大学 108A课程notes. R.H.Katz, G.Borriello, Contemporary Logic Design, second edition,电子工业出版社, 2005. M.M.Mano, 数字设计(第四版), 电子工业出版社, 2010. http://www.prenhall.com/mano Winter 2009 ZDMC – Lec. #09

Other Course Info Website: http://mypage.zju.edu.cn/wdwd/教学工作/ ftp://10.13.71.58/数字系统设计/2016/, 暂停 Check frequently 答疑 玉泉信电楼308室/周四下午2:30-5:00 上课课间、课后均可 Email,微信群,短信均可

Grading (考核) Final grades will be computed approximately as follows: 期中考试-10% 课程作业+小测验+上课出勤率+Project - 20% Class Room Check Homework Sets 作业上交截止期为课后一周内有效 Project 2 projects (1 or 2 members team) Project-2可选(总评加分3~5分,但不超过平时成绩范围) Finial Exam期末闭卷考试 - 70% 上课说明此门课程的成绩合成:平时成绩包括平时小测验、期中考试、作业、出勤、课堂讨论、论文

授课时间和地点: 2016年春夏学期, 地点:紫金港西1-520(多) 周二上午,第3、4节(9:50-11:25) 星期四上午,第1、2节(08:00-09:35) 地点:紫金港西1-520(多) http://mypage.zju.edu.cn/wdwd/教学工作/

课程结构 数字理论知识(必备) 数字电路分析与设计 脉冲电路与接口 控制器与数字系统 微处理器简介 数字系统和编码、逻辑代数、门电路 EE141 课程结构 数字理论知识(必备) 数字系统和编码、逻辑代数、门电路 数字电路分析与设计 组合逻辑电路 触发器、半导体存贮器、可编程器件 时序逻辑电路 脉冲电路与接口 控制器与数字系统 状态机 控制器 微码控制器 测试和验证 微处理器简介 Winter 2009 ZDMC – Lec. #09

存储器复习 随机存取存储器(RAM) 在计算机及数据处理系统中需要存放大量数据、中间结果、表格等设备,这就是随机存取存储器SRAM。 RAM可分为单极型和双极型:双极型工作速率高,但是集成度不如单极型的高,目前,由于工艺水平的不断提高,单极型RAM的速率已经可以和双极型RAM相比,而且单极型RAM具有功耗低的优点。 单极型RAM又可分为静态SRAM与动态DRAM:静态RAM是用MOS管触发器来存储代码,所用MOS管较多、集成度低、功耗也较大。动态RAM是用栅极分布电容保存信息,它的存储单元所需要的MOS管较少,因此集成度高、功耗也小。静态RAM使用方便,不需要刷新。 Winter 2009 ZDMC – Lec. #09

SRAM结构 地址译码器分行译码器和列译码器,只有行及列共同选中的单元才能进行读、写。这种寻址的方式所需要行线和列线的总数较少。 二、内部组织 一、外部特性 地址译码器分行译码器和列译码器,只有行及列共同选中的单元才能进行读、写。这种寻址的方式所需要行线和列线的总数较少。 --- 例如要存储256字×1位的容量,采用一元寻址就需要256条字线,若采用二元寻址只需A=16,B=16,共32条线也就可以了。 Winter 2009 ZDMC – Lec. #09

SRAM的存储单元 RAM中的存储单元可由双极型管组成,也可由MOS管组成。 Winter 2009 ZDMC – Lec. #09

动态随机存储器(DRAM) 动态存储单元是利用MOS管栅极电容可以存储电荷的原理 栅极电容保留信息只有一段时间,需定期地给它刷新,以免信息丢失,所以在每一行上设有刷新电路。 Winter 2009 ZDMC – Lec. #09

(二)动态MOS存储单元如下图 栅极电容保留信息只有一 这是一动态存储单元, 段时间,需定期地给它刷 靠栅极电容C1及C2存储 新,以免信息丢失,所以 在每一行上设有刷新电路。 这是一动态存储单元, 靠栅极电容C1及C2存储 电荷。 当刷新端加高电压时,负载管 T3、T4导通,同时行线加高电 压使T6、T5也导通,构成R-S 触发器,触发器的状态由C1及 C2中的电压决定 当X、Y线均为高电平时, T5、T6、T7及T8都导通, 此单元接至数据线, 如要写入“1”,只需在数据 线D上作用“1”便可以给C2 充上足够的电荷,而C1则不 被充电,表示记入了“1” Winter 2009 ZDMC – Lec. #09

RAM的扩展 当使用一片RAM器件不能满足存储量的需要时,可以将若干片RAM组合到一起,接成一个容量更大的RAM。 位扩展方式 将各片的地址线、读写线、片选线并联即可 字扩展方式/地址扩展方式 RAM的片选信号用译码器实现, 每一片RAM的数据端I/O1~I/O8都有三态缓冲器,而它们的片选信号又不会同时出现低电平, 可将它们的数据端并联起来,作为整个RAM的八位数据输入/输出端。 先进行位位扩展,再进行字扩展 Winter 2009 ZDMC – Lec. #09

EE141 Typical SRAM Timing OE determines direction Hi = Write, Lo = Read Writes are dangerous! Be careful! Double signaling: OE Hi, WE Lo A D OE_L 2 N words x M bit SRAM M WE_L Write Timing: Read Timing: Write Setup Time Write Hold Time High Z D Data In Data Out Data Out Read Access Time Read Access Time Junk A For write, you set up your address and data on the A and D pins and then you generate a write pulse that is long enough for the write access time. For simplicity, I have assumed the Write setup time for address and data to be the same. In real life, they can be different. For read operation, you have disasserted Wr Enable and assert Output Enable. Since you are supplying garbage address here so as soon as you assert OE_L, you will get garbage out. If you then present an valid address to the SRAM, valid data will be available at the output after a delay of the Write Access Time. SRAM’s timing is much simpler than the DRAM timing which I will show you later. +1 = 34 min. (Y:14) Write Address Read Address Read Address OE_L WE_L Winter 2009 ZDMC – Lec. #09

存储器的HDL描述 module memory (Enable, ReadWrite, Address, DataIn, DataOut); 1024个字的存储器,每个字是16位 reg [15:0] memword [0:1023]; module memory (Enable, ReadWrite, Address, DataIn, DataOut); input Enable, ReadWrite; input [3:0] DataIn; input [5:0] Address; output [3:0] DataOut; reg [3:0] DataOut; reg [3:0] Mem [0:63] //64x4 memory always @(Enable or ReadWrite) if (Enable) if (ReadWrite) DataOut = Mem[Address]; //Read else Mem[Address] = DataIn; //Write else DataOut= 4'bz //High impedance state endmodule Winter 2009 ZDMC – Lec. #09

EE141 第八章 可编程逻辑器件 Today, programmable logic devices, which contain the circuitry necessary to create logic functions, are being used to implement digital systems. Why have PLDs taken over so much of the market? With programmable devices, the same functionality can be obtained with one IC rather than using several individual logic chips. This characteristic means less board space, less power required, greater reliability, less inventory, and overall lower cost in manufacturing. Winter 2009 ZDMC – Lec. #09

第八章 可编程逻辑器件 (PLD, Programmable Logic Device) EE141 第八章 可编程逻辑器件 (PLD, Programmable Logic Device) 8.1 概述 一、PLD的基本特点 1. 数字集成电路从功能上有分为通用型、专用型两大类 2. PLD的特点:是一种按通用器件来生产,但逻辑功能是由用户通过对器件编程来设定的 数字 系统 Winter 2009 ZDMC – Lec. #09

Programmable Logic Regular logic Field Programmable Gate Arrays EE141 Programmable Logic Regular logic Programmable Logic Arrays Multiplexers/Decoders ROMs Field Programmable Gate Arrays Xilinx Vertex “Random Logic” Full Custom Design “Regular Logic” Structured Design Winter 2009 ZDMC – Lec. #09

DIGITAL SYSTEMS FAMILY TREE Winter 2009 ZDMC – Lec. #09

二、PLD的发展和分类 PROM是最早的PLD PAL 可编程逻辑阵列 FPLA 现场可编程阵列逻辑 GAL 通用阵列逻辑 EE141 二、PLD的发展和分类 PROM是最早的PLD PAL 可编程逻辑阵列 FPLA 现场可编程阵列逻辑 GAL 通用阵列逻辑 EPLD 可擦除的可编程逻辑器件 FPGA 现场可编程门阵列 ISP-PLD 在系统可编程的PLD Winter 2009 ZDMC – Lec. #09

EE141 三、LSI中用的逻辑图符号 Winter 2009 ZDMC – Lec. #09

8.2 现场可编程逻辑阵列 FPLA Field Programmable Logic Array EE141 8.2 现场可编程逻辑阵列 FPLA Field Programmable Logic Array 组合电路和时序电路结构的通用形式1970s 逻辑函数与或表达式 与逻辑+或逻辑 最小项之和 部分最小项 与EPROM很相似 时序型FPLA A0~An-1 W0 W(2n-1) D0 Dm Although the FPLA is more flexible than the PAL architecture, it has not been as widely accepted by engineers. FPLAs are used mostly in state-machine design where a large number of product terms are needed in each SOP expression. Winter 2009 ZDMC – Lec. #09

EE141 8.2 FPLA结构 组合电路和时序电路结构的通用形式 Winter 2009 ZDMC – Lec. #09

8.3 PAL(Programmable Array Logic) EE141 8.3 PAL(Programmable Array Logic) 8.3.1 PAL的基本电路结构,1970s,曾大规模应用, 采用双极型熔丝工艺,工作速度较高。 一、基本结构形式 可编程“与”阵列+固定“或”阵列+输出电路 最简单的形式为: 二、编程单元 出厂时, 所有的交叉点均有熔丝 三、输出有限、减少单元数 Winter 2009 ZDMC – Lec. #09

PAL器件的输入、输出结构以及输入、输出的数目是由集成电路制造商根据实际设计情况大致估计确定。 EE141 8.3.2 PAL的输出电路结构和反馈形式 PAL器件的输入、输出结构以及输入、输出的数目是由集成电路制造商根据实际设计情况大致估计确定。 一. 专用输出结构 用途:产生组合逻辑电路 Winter 2009 ZDMC – Lec. #09

二. 可编程输入/输出结构 用途:组合逻辑电路, 有三态控制可实现总线连接 可将输出作输入用 当最上面的乘积项为高电平时,三态 EE141 二. 可编程输入/输出结构 当最上面的乘积项为高电平时,三态 门开通,I/O可作为输出或反馈;乘积 项为低电平时,三态门关断,是输入。 用途:组合逻辑电路, 有三态控制可实现总线连接 可将输出作输入用 Winter 2009 ZDMC – Lec. #09

三. 寄存器输出结构、时序结构 用途:产生时序逻辑电路 触发器的Q端可以 触发器的反相端反馈回与 通过三态缓冲器 阵列,作为输入信号参与 EE141 三. 寄存器输出结构、时序结构 用途:产生时序逻辑电路 触发器的Q端可以 通过三态缓冲器 送到输出引脚 触发器的反相端反馈回与 阵列,作为输入信号参与 更复杂的时序逻辑运算 或门的输出通过D触发器, 在CP的上升沿时到达输出。 Winter 2009 ZDMC – Lec. #09

四. 带异或输出结构 两个和项在触发器的输入端异或之后, 在时钟上升沿到来时存入触发器内 把乘积项分割成两 个和项 时序逻辑电路 EE141 四. 带异或输出结构 两个和项在触发器的输入端异或之后, 在时钟上升沿到来时存入触发器内 把乘积项分割成两 个和项 时序逻辑电路 还可便于对“与-或”输出求反 Winter 2009 ZDMC – Lec. #09

五. 运算反馈结构 时序逻辑电路 可产生A、B的十六种算术、逻辑运算 EE141 五. 运算反馈结构 由8个寄存器型输出结构组成的PAL器件命名为PAL16R8,由8个可编程I/O结构组成的PAL器件则命名为PAL16L8。 时序逻辑电路 可产生A、B的十六种算术、逻辑运算 Winter 2009 ZDMC – Lec. #09

O3 = AB + C D + 0 + 0 Winter 2009 ZDMC – Lec. #09

EE141 ROM vs. PLA ROM Design time is short (no need to minimize output functions) Most input combinations are needed (e.g., code converters) Little sharing of product terms among output functions Size doubles for each additional input Can't exploit don't cares Cheap (high-volume component) Can implement any function of n inputs Medium speed PLA Design tools are available for multi-output minimization There are relatively few unique minterm combinations Many minterms are shared among the output functions Most complex in design, need more sophisticated tools Can implement any function up to a product term limit Slow (two programmable planes) Winter 2009 ZDMC – Lec. #09

8.3.3 PAL的应用举例 逻辑函数 EDA软件设计 自学: P397例8.3.1 P399例8.3.2 EE141 8.3.3 PAL的应用举例 逻辑函数 EDA软件设计 自学: P397例8.3.1 P399例8.3.2 Winter 2009 ZDMC – Lec. #09

8.4 通用逻辑阵列 GAL 8.4.1 电路结构形式1985 OLMC 采用E2CMOS工艺和灵活的输出结构,有电擦写反复编程的特性。 EE141 8.4 通用逻辑阵列 GAL 8.4.1 电路结构形式1985 采用E2CMOS工艺和灵活的输出结构,有电擦写反复编程的特性。 可编程“与”阵列 + 固定“或”阵列 + 可编程输出电路 OLMC 编程单元 采用E2CMOS 可改写 统一型号 适当地为OLMC进行 编程,GAL就可以在功能上代替前面讨论过的PAL各种输出类型以及其派生类型 输出逻辑宏单元OLMC(Output Logic Macro Cell) Winter 2009 ZDMC – Lec. #09

由OLMC编程决定input or ouput EE141 GAL16V8:16表示阵列的输入端数量,8表示输出端数量,V则表示输出形式可以改变的普通型 由OLMC编程决定input or OE 由OLMC编程决定input or ouput 由OLMC编程决定input or CLK GAL16V8 Winter 2009 ZDMC – Lec. #09

GAL器件结构和特点 GAL16V8的基本结构 一个共用时钟CLK 8个输出反馈缓冲器 8个输出缓冲器 8个输入缓冲器 8个OLMC Winter 2009 ZDMC – Lec. #09

8.4.2 OLMC输出逻辑宏单元 编程信息:存于状态控制字中。 工作模式: 由结构控制字决定 AC0,AC1(n),XOR(n) EE141 8.4.2 OLMC输出逻辑宏单元 工作模式: 由结构控制字决定 AC0,AC1(n),XOR(n) 数据选择器 编程信息:存于状态控制字中。 Winter 2009 ZDMC – Lec. #09

8.4.3 GAL的输入和输出特性 GAL是一种较为理想的高输入阻抗器件 CMOS输入 不可悬空 EE141 8.4.3 GAL的输入和输出特性 GAL是一种较为理想的高输入阻抗器件 CMOS输入 不可悬空 Actually, the GAL 16V8 has only three different modes: (1) simple mode, which is used to implement simple SOP combinational logic without tristate outputs; (2) complex mode, which implements SOP combinational logic with tristate outputs that are enabled by an AND product expression; (3) registered mode, which allows individual OLMCs to operate in a combinational configuration with tristate outputs (similar to the complex mode) or in a synchronous mode with clocked D FFs synchronized to a common clock signal. Winter 2009 ZDMC – Lec. #09

EE141 GAL输出缓冲级 三态 N-MOS 高速大电流 Winter 2009 ZDMC – Lec. #09

8.5 可擦除的可编程逻辑阵列EPLD 一、结构特点 相当于 “与-或”阵列(PAL) + OLMC 二、采用EPROM工艺 集成度提高 EE141 8.5 可擦除的可编程逻辑阵列EPLD 一、结构特点 相当于 “与-或”阵列(PAL) + OLMC 二、采用EPROM工艺 集成度提高 高密度 复杂的可编程逻辑阵列CPLD Winter 2009 ZDMC – Lec. #09

Simplified version of FPGA internal architecture EE141 8.7 现场可编程门阵列FPGA Basic idea: two-dimensional array of logic blocks and flip-flops with a means for the user to configure: 1. the interconnection between the logic blocks, 2. the function of each block. 一、基本结构 1. IOB输入输出 2. CLB逻辑 3. 互连资源IR 4. SRAM编程数据 Simplified version of FPGA internal architecture Winter 2009 ZDMC – Lec. #09

EE141 Why FPGAs? By the early 1980’s most of the logic circuits in typical systems where absorbed by a handful of standard large scale integrated circuits (LSI). Microprocessors, bus/IO controllers, system timers, ... Every system still had the need for random “glue logic” to help connect the large ICs: generating global control signals (for resets etc.) data formatting (serial to parallel, multiplexing, etc.) Systems had a few LSI components and lots of small low density SSI (small scale IC) and MSI (medium scale IC) components. Winter 2009 ZDMC – Lec. #09

EE141 Why FPGAs? Custom ICs sometimes designed to replace the large amount of glue logic: reduced system complexity and manufacturing cost, improved performance. However, custom ICs are very expensive to develop, and delay introduction of product to market (time to market) because of increased design time. Note: need to worry about two kinds of costs: 1. cost of development, sometimes called non-recurring engineering (NRE) 2. cost of manufacture A tradeoff usually exists between NRE cost and manufacturing costs Winter 2009 ZDMC – Lec. #09

Why FPGAs? Custom IC approach viable for products that are … EE141 Why FPGAs? Custom IC approach viable for products that are … very high volume (where NRE could be amortized), not time-to-market sensitive. FPGAs introduced as an alternative to custom ICs for implementing glue logic: improved density relative to discrete SSI/MSI components (within around 10x of custom ICs) with the aid of computer aided design (CAD) tools circuits could be implemented in a short amount of time (no physical layout process, no mask making, no IC manufacturing), relative to ASICs. lowers NREs shortens TTM Because of Moore’s law the density (gates/area) of FPGAs continued to grow through the 80’s and 90’s to the point where major data processing functions can be implemented on a single FPGA. Winter 2009 ZDMC – Lec. #09

Field-Programmable Gate Arrays PLAs: 100s of gate equivalents FPGAs: 1000-10000s gates  upto 10,000,000gates Logic blocks Implement combinational and sequential logic Interconnect Wires to connect inputs and outputs to logic blocks I/O blocks Special logic blocks at periphery of device for external connections Key questions: How to make logic blocks programmable? How to connect the wires? After the chip has been fabbed Winter 2009 ZDMC – Lec. #09

1. IOB 可以设置为输入/输出; 输入时可设置为:同步(经触发器) 异步(不经触发器) EE141 1. IOB 可以设置为输入/输出; 输入时可设置为:同步(经触发器) 异步(不经触发器) Winter 2009 ZDMC – Lec. #09

2. CLB 本身包含了组合电路和触发器,可构成小的时序电路 将许多CLB组合起来,可形成大系统----阵列 EE141 2. CLB 本身包含了组合电路和触发器,可构成小的时序电路 将许多CLB组合起来,可形成大系统----阵列 Winter 2009 ZDMC – Lec. #09

EE141 3. 互连资源 Winter 2009 ZDMC – Lec. #09

Xilinx FPGAs (interconnect detail) EE141 Xilinx FPGAs (interconnect detail) Winter 2009 ZDMC – Lec. #09

4. SRAM 分布式 每一位触发器控制一个编程点 EE141 4. SRAM 分布式 每一位触发器控制一个编程点 Winter 2009 ZDMC – Lec. #09

Details of Virtex-E Slice EE141 Details of Virtex-E Slice LUT 4-input fun 16x1 sram 32x1 or 16x2 in slice 16 bit shift register Storage element D flipflip latch Combinational outputs 5 and 6 input functions Carry chain arithmetic along row or col Winter 2009 ZDMC – Lec. #09

二、编程数据的装载 数据可先放在EPROM或PC机中 EE141 二、编程数据的装载 数据可先放在EPROM或PC机中 通电后,自行启动FPGA内部的一个时序控制逻辑电路,将在EPROM中存放的数据读入FPGA的SRAM中 “装载”结束后,进入编程设定的工作状态 !!每次停电后,SRAM中数据消失 下次工作仍需重新装载 Winter 2009 ZDMC – Lec. #09

FPGA architecture Winter 2009 ZDMC – Lec. #09

Virtex-E Family of Parts EE141 Virtex-E Family of Parts Winter 2009 ZDMC – Lec. #09

Why are FPGAs Interesting? Technical viewpoint: For hardware/system-designers, like ASICs only better! “Tape-out” new design every few minutes/hours. Does the “reconfigurability” or “reprogrammability” offer other advantages over fixed logic? Dynamic reconfiguration? In-field reprogramming? Selfmodifying hardware,evolvable hardware? FPGAs have tracked Moore’s Law better than any other programmable device. Staggering logic capacity growth (10000x): Winter 2009 ZDMC – Lec. #09

Why are FPGAs Interesting? Logic capacity now only part of the story: on-chip RAM, high-speed I/Os, “hard” function blocks, ... Modern FPGAs are “reconfigurable systems” Have been an archetype for the semiconductor industry as a whole: But, the heterogeneity erodes the “purity”argument. Mapping is more difficult. Introduces uncertainty in efficiency of solution. Winter 2009 ZDMC – Lec. #09

Why are FPGAs Interesting? Have attracted an huge amount of investment for new ventures: Most startups have failed. Why? Business dominated by Xilinx and Altera FPGAs at the leading edge of IC processing: Xilinx V7 out next year with 28nm TSMC processing Foundaries like FPGAs - regularity help get process up the “learning curve” High-volume commitment gets interest of foundry (Gives FPGAs a competitive edge over ASICs, which usually are built on an older process.) FPGAs have been wildly successful even though they are inefficient in silicon area, energy, and performance : “Measuring the Gap Between FPGAs and ASICs”, Versus ASICs: area 40X, delay 3-4X, power 12X How can this be? Is there something more important than silicon efficiency? Winter 2009 ZDMC – Lec. #09

8.8 在系统可编程通用数字开关(ispGDS) EE141 8.8 在系统可编程通用数字开关(ispGDS) ispGDS22的结构框图 Winter 2009 ZDMC – Lec. #09

8.9 PLD的编程 以上各种PLD均需离线进行编程操作,使用开发系统 一、开发系统 硬件:计算机+编程器 软件:开发环境(软件平台) EE141 8.9 PLD的编程 以上各种PLD均需离线进行编程操作,使用开发系统 一、开发系统 硬件:计算机+编程器 软件:开发环境(软件平台) VHDL, Verilog 真值表,方程式,电路逻辑图(Schematic) 状态转换图( FSM) Winter 2009 ZDMC – Lec. #09

抽象(系统设计采用Top-Down的设计方法) 选定PLD 选定开发系统 编写源程序(或输入文件) 调试,运行仿真,产生下载文件 下载 测试 EE141 二、步骤 抽象(系统设计采用Top-Down的设计方法) 选定PLD 选定开发系统 编写源程序(或输入文件) 调试,运行仿真,产生下载文件 下载 测试 Winter 2009 ZDMC – Lec. #09

FPGA Generic Design Flow EE141 FPGA Generic Design Flow Design Entry: Create your design files using: schematic editor or hardware description language (Verilog, VHDL) Design “implementation” on FPGA: Partition, place, and route to create bit-stream file Design verification: Use Simulator to check function, other software determines max clock frequency. Load onto FPGA device (cable connects PC to development board) check operation at full speed in real environment. Winter 2009 ZDMC – Lec. #09

isp器件的编程接口(Lattice) 使用ispPLD的优点: *不再需要专用编程器 *为硬件的软件化提供可能 EE141 isp器件的编程接口(Lattice) 开发 环境 使用ispPLD的优点: *不再需要专用编程器 *为硬件的软件化提供可能 *为实现硬件的远程构建提供可能 Winter 2009 ZDMC – Lec. #09

JTAG interface between PC parallel port and EPM7128SLC84 programmer Winter 2009 ZDMC – Lec. #09

课后作业 查阅: 国际上的数字相关集成电路公司的PLA,GAL,EPLD,CPLD,FPGA芯片的型号、接口类型、速度…… EE141 课后作业 查阅: 国际上的数字相关集成电路公司的PLA,GAL,EPLD,CPLD,FPGA芯片的型号、接口类型、速度…… 图书馆资源:电子器件天地 http://10.15.61.7:8080/poweb/s_search.jsp?searchFiled=5&KWord=tjn&sClass=0&Submit=%BC%EC+%CB%F7 习题:/P440 HW11: 8.2, 8.3, 8.5, 8.7 ;(5月10日前上交) 阅读: 脉冲电路 Winter 2009 ZDMC – Lec. #09