IC芯片自主创新设计实验

Similar documents
(Microsoft Word - \245\274\244\300\246\250\301Z\260\252\247C13.doc)

a b c d e f g C2 C1 2

B 6 A A N A S A +V B B B +V 2

D-Type entity D_FF is D :in std_logic; CLK :in std_logic; Q :out std_logic); end D_FF; architecture a of D_FF is process(clk,d) if CLK'EVENT and CLK =

Microsoft PowerPoint - EDA-理论3 [兼容模式]

untitled

z x / +/- < >< >< >< >< > 3 b10x b10x 0~9,a~f,A~F, 0~9,a~f,A~F, x,x,z,z,?,_ x,x,z,z,?,_ h H 0~9,_ 0~9,_ d D 0~7,x,X,z,Z

untitled

VHDL(Statements) (Sequential Statement) (Concurrent Statement) VHDL (Architecture)VHDL (PROCESS)(Sub-program) 2

1 什么是Setup 和Holdup时间?

2. initial always initial always 0 always initial always fork module initial always 2 module clk_gen_demo(clock1,clock2); output clock1,clock2; reg cl

⊙内容:常用逻辑电路设计


9 什 么 是 竞 争 与 冒 险 现 象? 怎 样 判 断? 如 何 消 除?( 汉 王 笔 试 ) 在 组 合 逻 辑 中, 由 于 门 的 输 入 信 号 通 路 中 经 过 了 不 同 的 延 时, 导 致 到 达 该 门 的 时 间 不 一 致 叫 竞 争 产 生 毛 刺 叫 冒 险 如

第一章.doc

图 片 展 示 : 资 源 简 介 : FPGA Altera CycloneII EP2C5T144C8 (4608 个 LE) 2 路 有 源 晶 振 (50M,25M) AS & JTAG 标 准 接 口 VGA 接 口 UART 接 口 蜂 鸣 器 8bit 并 行 DAC 8 路 按 键

8.3 模块设计 ⒈ 主体控制模块 控制部分由时序输出及楼选计数器 电梯请求服务处理器 电梯升降控制器 电梯升降寄存器 及电梯次态生成器等组成, 其内部结构如图 8-2 所示 时钟 CLK 时序输出及楼选计数器 (Fd) 上升请求 UP 下降请求 DOWN 楼层选择 FCH 电梯服务 请求处理器 F

ebook122-3

穨R _report.PDF

ebook122-11

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

第一章

了 波 涛 和 号 声 袁 读 者 很 容 易 就 进 入 广 州 城 的 水 上 旅 途 袁 进 入 一 座 野 水 上 名 城 冶 的 传 说 中 去 遥 于 是 袁 一 座 名 城 往 事 充 满 了 漂 流 感 袁 旋 律 自 水 上 而 来 袁 我 们 就 这 样 来 到 了 往 事 的

壹、摘 要

<4D F736F F D20BCAFB3C9B5E7C2B7D3EBD6C7C4DCCFB5CDB3B4B4D0C2BBF9B5D8B2E2CAD4CCE22E646F63>

2 时序电路的 VHDL 描述 例 2.1 D 触发器的 VHDL 描述最简单 最具有代表性的时序电路是 D 触发器 对 D 触发器的描述包含了 VHDL 对时序电路的最基本和典型的表达方式, 也包含了 VHDL 中许多最具特色的语言现象 D DFF1 Q CLK ( 实体 -Entity)? 电路

untitled

邏輯分析儀的概念與原理-展示版


【主持人】:给大家介绍一下,这次的培训是我们画刊部的第三次培训,当然今天特别有幸请来著吊的摄影家李少白老师给我们讲课

untitled

untitled

YYW1.nps

穨邱秀玲綜合展望報告.PDF

表 决, 审 议 程 序 符 合 有 关 法 律 法 规 和 本 公 司 章 程 的 规 定 3 本 议 案 尚 需 提 交 股 东 大 会 审 议, 与 该 等 交 易 有 利 害 关 系 的 关 联 股 东 将 放 弃 在 股 东 大 会 上 对 相 关 议 案 的 投 票 权 ( 二 ) 公

<4D F736F F D20B9F0D5FEB0ECB7A2A3A A3A93532BAC52E646F63>

103_02.xls

<313032A655A874B2D5B3CCA743BFFDA8FABCD0B7C7AAED2E786C73>

柳州历史上的今天内文改版式.FIT)

生 產 準 備 您 接 近 生 產 之 注 意 事 項 : 備 妥 住 院 用 物, 勿 遠 行 ( 生 產 用 物 包 ) 最 好 有 人 在 家 陪 伴, 或 和 陪 產 者 保 持 連 繫, 有 任 何 狀 況 可 立 即 趕 到 可 做 家 事 散 步 蹲 下 等 運 動, 以 不 太 累

省十二届人大常委会

Q8. 公 營 事 業 機 構 之 公 務 員 兼 具 勞 工 身 分 者, 於 97 年 3 月 19 日 以 前, 原 選 擇 參 加 勞 保, 調 任 其 他 公 營 事 業 機 構 時, 應 改 參 加 公 保 所 謂 調 任 其 他 公 營 事 業 機 構 之 判 別 依 據 ( 或 標

学生工作部处2010年工作总结

決議、附帶決議及注意事項

天人炁功行入與感應經驗分享

Microsoft Word - xiuxinduanyu-2-doc.doc

4.1 VHDL VHDL 4-1 a b & c 4-1 2

合金投资年报正文.PDF

从 宾 馆 到 又 一 城 是 十 五 分 钟, 从 又 一 城 到 邵 逸 夫 是 十 分 钟, 去 时 一 路 上 坡 很 辛 苦, 回 时 一 路 下 坡 很 轻 松, 很 像 上 小 学 时 的 心 情, 这 是 最 初 几 天 最 深 的 感 受 有 段 时 间 很 少 走 校 内 的 路


MCSE• .PDF

!"#!$ %!$"" %%$&&''!(!)!*+,,!%*& -./ *##)' * %$" ',!*+/!*+ / - 0,1 #$*#2 #$*#2'' *($#3 *($#3'' -. 45,67!&$#6)*$ , ' 189

逢 甲 大 學

Microsoft Word - FPGA的学习流程.doc

KT-SOPCx开发套件简明教程


程式人雜誌

2/14 Buffer I12, /* x=2, buffer = I 1 2 */ Buffer I243, /* x=34, buffer = I 2 43 */ x=56, buffer = I243 Buffer I243I265 code_int(int x, char *buffer)

第八章

ebook105-1

东北证券股份有限公司关于推荐北京双杰电气股份有限公司

101

Word Pro - FPGA设计高级技巧(Xilinx篇).lwp

序言.PDF

壹、教務處

Microsoft Word - EDA2006_A_Answer

第3节 VHDL语言的常用语法

PowerPoint Presentation

2008 Never Stop

enews172_1

FPGA 培训专家 FPGA 入门课程 3- 分频器 第三节分频器 8 分频器 ; 例 : 输入为 50Mhz 占空比为 ( 高低电平持续时间的比值 )50% 的时钟, 将其 8 分频后输出分析 : 将 50Mhz8 分频频率为 50/8=6.25Mhz 周期为 20n

Microsoft PowerPoint - chap02.ppt

EDAKONXIN.PDF

audiogram3 Owners Manual

untitled

逢甲大學

Process Data flow Data store External entity 6-10 Context diagram Level 0 diagram Level 1 diagram Level 2 diagram


表 1 96 年 全 民 健 保 各 年 齡 組 門 診 申 報 件 數 單 位 : 萬 件 % 年 齡 組 合 計 男 女 件 數 占 率 件 數 占 率 件 數 占 率 合 計 33, , , 歲 4, ,

Quality of Life 1 TEIJIN CSR Report 2012

行业


untitled

2/80 2

第 2 頁 建 議 2. 政 府 資 訊 科 技 總 監 建 議 開 立 - (a) 一 筆 為 數 4 億 7,470 萬 元 的 承 擔 額, 用 以 推 行 Wi-Fi 連 通 城 市 計 劃, 如 下 文 第 10 至 18 段 所 述, 通 過 結 合 公 私 營 合 作 及 政 府 出

v

Cube20S small, speedy, safe Eextremely modular Up to 64 modules per bus node Quick reaction time: up to 20 µs Cube20S A new Member of the Cube Family

PowerPoint Presentation

Microsoft PowerPoint - DFD.PPT

Microsoft PowerPoint 校務會議主席報告

1 1

软件测试(TA07)第一学期考试

行业

<4D F736F F F696E74202D20D7BFD4BDB9A4B3CCCAA6D6AE454441BCBCCAF5BCB0D3A6D3C3B5DA34BDB22E BBCE6C8DDC4A3CABD5D>

(Microsoft Word - \256g\275b\252\354\305\351\305\347.doc)

僑生(含港澳生)及外籍生參加全民健康保險實施要點

_NT K_SC_A5_ _print.pdf

穨良導絡值與驗診壓力之關聯研究

方法论篇--修改稿(更新).PDF


Transcription:

IC 芯片自主创新设计实验 设计报告 设计题目 : 格雷码计数器芯片设计 设计学生 : 吴东生 ( 集成电路 ) 景国新 ( 固体电子 ) 林道明 ( 集成电路 ) 连维重 ( 集成电路 ) 施望 ( 集成电路 ) 刘锦秀 ( 集成电路 ) 刘中伟 ( 集成电路 ) 李梦宁 ( 集成电路 ) 指导教师 : 阮爱武 杜涛 指导单位 : 电子设计自动化技术 课程组

一 格雷码计数器芯片设计概述 功能描述 : 当使能有效 复位端无效, 时钟上升沿来临时, 以格雷码方式计数, 输出为四位 ( 满量程 16). 重复计数. 复位端有效, 清零 格雷码计数器引脚分布如下图 : RST EN CLK GND Core OUT0 VDD OUT1 OUT2 OUT3 引脚描述 : EN : 使能信号. 使芯片开始计数, 可以实现暂停功能 RST : 复位, 清零 CLK : 时钟信号 VDD_PAD :PAD 地 VSS_PAD: PAD 电源

VDD_CORE: CORE 地 VSS_CORE: CROE 电源 OUT[3:0] 输出四位计数值 二 格雷码计数器系统结构 En Rst 计数器 二进制转格雷码 数据寄存器 输出 Clk 三 格雷码计数器设计 1: 顶层 : 源代码如下 : library IEEE; use IEEE.std_logic_1164.all; entity gray_cunt is port( clk : in STD_LOGIC; en : in STD_LOGIC; rst : in STD_LOGIC; outdata : out STD_LOGIC_VECTOR(3 downto 0) end gray_cunt;

architecture rtl_top of gray_cunt is ---- Component declarations ----- component b2g port ( cunt : in STD_LOGIC_VECTOR(3 downto 0 gray : out STD_LOGIC_VECTOR(3 downto 0) end component; component cunt port ( clk : in STD_LOGIC; en : in STD_LOGIC; rst : in STD_LOGIC; outdata : out STD_LOGIC_VECTOR(3 downto 0) end component; component reg port ( clk : in STD_LOGIC; en : in STD_LOGIC; gray : in STD_LOGIC_VECTOR(3 downto 0 rst : in STD_LOGIC; outdata : out STD_LOGIC_VECTOR(3 downto 0) end component; ---- Signal declarations used on the diagram ---- signal BUS60 : STD_LOGIC_VECTOR (3 downto 0 signal BUS64 : STD_LOGIC_VECTOR (3 downto 0 ---- Component instantiations ---- U1 : b2g port map( cunt => BUS64, gray => BUS60 U2 : cunt port map( clk => clk, en => en,

outdata => BUS64, rst => rst U3 : reg port map( clk => clk, en => en, gray => BUS60, outdata => outdata, rst => rst end rtl_top; 2: 计数器部分 library IEEE; use IEEE.STD_LOGIC_1164.all; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity cunt is port( en : in STD_LOGIC; rst : in STD_LOGIC; clk : in STD_LOGIC; outdata : out STD_LOGIC_VECTOR(3 downto 0) end cunt; --}} End of automatically maintained section architecture cunt of cunt is signal cout:std_logic_vector(3 downto 0 -- enter your statements here -- process (rst,clk) if(rst='0') then cout<="0000"; elsif (clk'event and clk='1') if(en='1') then then

if (cout="1111") then cout<="0000" ; else cout<=cout+'1' ; end if; end if; end if; end process ; outdata<=cout; end cunt; 3: 二进制转格雷码部分 library IEEE; use IEEE.STD_LOGIC_1164.all; entity b2g is port( cunt : in STD_LOGIC_VECTOR(3 downto 0 gray : out STD_LOGIC_VECTOR(3 downto 0) end b2g; --}} End of automatically maintained section architecture b2g of b2g is -- enter your statements here -- gray(0) <= cunt(0) xor cunt (1 gray(1) <= cunt(1) xor cunt (2 gray(2) <= cunt(2) xor cunt (3 gray(3) <= cunt(3) xor '0'; end b2g; 4: 寄存器部分 library IEEE; use IEEE.STD_LOGIC_1164.all; entity reg is port( en: in std_logic; clk : in STD_LOGIC;

rst : in STD_LOGIC; gray : in STD_LOGIC_VECTOR(3 downto 0 outdata : out STD_LOGIC_VECTOR(3 downto 0) end reg; --}} End of automatically maintained section architecture reg of reg is -- enter your statements here -- process(clk,rst) if(clk'event and clk='1')then if(en='1' and rst='1')then outdata<=gray; elsif(en='0')then null; elsif(rst='0')then outdata<="0000"; end if; else null; end if; end process; end reg; 四 功能仿真 仿真工具为 :ACTIVE-HDL6.1 格雷码计数器仿真波形如下 :

五 DC 综合 : 1: 网表文件 (gray_cunt_dc.v): module b2g ( cunt, gray input [3:0] cunt; output [3:0] gray; wire \cunt[3]; assign \cunt[3] = cunt[3]; assign gray[3] = \cunt[3] ; XO02D1 U7 (.A(cunt[2]),.B(\cunt[3] ),.Y(gray[2]) XO02D1 U8 (.A(cunt[0]),.B(cunt[1]),.Y(gray[0]) XO02D1 U9 (.A(cunt[1]),.B(cunt[2]),.Y(gray[1]) endmodule module cunt ( en, rst, clk, outdata output [3:0] outdata; input en, rst, clk; n168, n179; wire n181, n180, n158, n159, n160, n161, n162, n164, n166, n167, n169, n170, n171, n172, n173, n174, n175, n176, n177, n178, IN01D1 U41 (.A(en),.YN(n170) IN01D1 U42 (.A(n172),.YN(n174) XN02D1 U43 (.A(en),.B(outdata[0]),.YN(n159) IN01D2 U44 (.A(n159),.YN(n160)

IN01D1 U45 (.A(n168),.YN(n176) IN01D1 U46 (.A(n167),.YN(n171) OA04D1 U47 (.A1(n167),.A2(n173),.B(outdata[3]),.YN(n169) DFCTNH\cout_reg[3] (.CK(clk),.Q(outdata[3]),.QN(n158),.CDN(rst),.D( n177) DFCTNH\cout_reg[0] (.CK(clk),.Q(outdata[0]),.QN(n161),.CDN(rst),.D( n160) IN01D2 U48 (.A(n162),.YN(outdata[2]) MX21D2 U49 (.A0(n175),.A1(n173),.S(outdata[2]),.Y(n178) IN01D2 U50 (.A(n164),.YN(outdata[1]) MX21D2 U51 (.A0(n176),.A1(n172),.S(n181),.Y(n179) ND02D1 U52 (.A(n174),.B(outdata[1]),.YN(n173) AN02D1 U53 (.A(n176),.B(outdata[1]),.Y(n175) IN01D1 U54 (.A(n181),.YN(n166) OR03D1 U55 (.A(n162),.B(n158),.C(n166),.Y(n167) OR03D1 U56 (.A(n170),.B(n161),.C(n171),.Y(n168) ND02D2 U57 (.A(en),.B(outdata[0]),.YN(n172) OA16D2 (.A1(n180),.A2(n168),.A3(n166),.B(n169),.YN(n177) DFCTNB (.CK(clk),.Q(n180),.QN(n162),.CDN(rst),.D(n178) U58 \cout_reg[2] DFCTNB (.CK(clk),.Q(n181),.QN(n164),.CDN(rst),.D(n179) \cout_reg[1]

endmodule module \reg ( en, clk, rst, gray, outdata output [3:0] outdata; input [3:0] gray; input en, clk, rst; wire n22, net22, net23, net24, net25, n23, n24, n25, n26; OA09D2 (.A1(gray[0]),.A2(n22),.B1(en),.B2(net25),.YN(n26) OA09D2 (.A1(gray[1]),.A2(n22),.B1(en),.B2(net24),.YN(n25) OA09D2 (.A1(gray[2]),.A2(n22),.B1(en),.B2(net23),.YN(n24) OA09D2 (.A1(gray[3]),.A2(n22),.B1(en),.B2(net22),.YN(n23) U17 U18 U19 U20 ND02D2 U21 (.A(en),.B(rst),.YN(n22) DFNTNB (.CK(clk),.Q(outdata[3]),.QN(net22),.D(n23) DFNTNB (.CK(clk),.Q(outdata[2]),.QN(net23),.D(n24) DFNTNB (.CK(clk),.Q(outdata[1]),.QN(net24),.D(n25) DFNTNB (.CK(clk),.Q(outdata[0]),.QN(net25),.D(n26) \outdata_reg[3] \outdata_reg[2] \outdata_reg[1] \outdata_reg[0] endmodule

module gray_cunt ( clk, en, rst, outdata output [3:0] outdata; input clk, en, rst; wire \BUS64[3], \BUS64[2], \BUS64[1], \BUS64[0], \BUS60[3], \BUS60[1], \BUS60[2], \BUS60[0] ; b2g U1 (.cunt({\bus64[3], \BUS64[2], \BUS64[1], \BUS64[0] }),.gray({ \BUS60[3], \BUS60[2], \BUS60[1], \BUS60[0] }) cunt U2 (.en(en),.rst(rst),.clk(clk),.outdata({\bus64[3], \BUS64[2], \BUS64[1], \BUS64[0] }) \reg U3 (.en(en),.clk(clk),.rst(rst),.gray({\bus60[3], \BUS60[2], Endmodule 六 : 综合后仿真 : \BUS60[1], \BUS60[0] }),.outdata(outdata) 1:testbench 文件如下 : `timescale 1ns/10ps module gray_cunt_tb; //Internal signals declarations: reg clk; reg en; reg rst; wire [3:0]outdata; // Unit Under Test port map gray_cunt UUT (

.clk(clk),.en(en),.rst(rst),.outdata(outdata) initial $sdf_annotate("gray_cunt_dc.sdf",uut $shm_open ("shm.db" $shm_probe ("AC" clk =0; en=0; rst=1; end always #20 clk = ~clk; initial #2 rst = 1'b1; #53 en = 1'b0; #153 en = 1'b1; #153 rst = 1'b0; #153 rst = 1'b1; #2300 en = 1'b0; #153 rst = 1'b0; #100 $stop; end endmodule 2: 波形图 :

七 自动布局布线 core 自动布局布线后的仿真波形图如下 : 加 PAD 后的自动布局布线结果 :

八 MPW 加工 本项目选择 CSMC 0.5um 工艺, 采用 MPW 模式加工 芯片加 工后的实物照片如下图所示