文章目录
Homework:65分
1、作业在Topic1-3课件的最后几页一次给出,大家根据自己的时间安排,最晚结课后一周内完成即可;
2、四次作业做成两个pdf文件:
- 3000字以上的报告(文件名:学号姓名2020ASIC-1):35分
- Topic2~Topic4的作业(文件名:学号姓名2020ASIC-2):30分
3、2个pdf文件分别(无需打包压缩)通过QQ或邮件发给课程助教;为避免出错,文件名不符合规定的拒收,请同学们以收到助教回复为准;
4、作业并不难,无需组队,鼓励讨论,当然我会人工查重^_^
MOOC:25分
1、MOOC资源在“学堂在线”网站(https://next.xuetangx.com/);因网站升级,国庆后才开放 ;
2、请各位同学选课后修改昵称为“学号”,以便区分校内外学员;
3、MOOC成绩将直接从网上导出,所以请同学们关注网站规定;
课堂测验/练习:10分
- 预计2-3次
教材
Topic1 Homework
- 1、What are the concerns of after Moore’s Law?
- 2、Study the roadmap and identify the trend of digital ICs in the next five years.
- 3、Find a 3-D IC device and discuss its advantage and disadvantage as compared to 2-D devices.
- 4、Find out the number of layers for interconnects in today’s massive production process. Explain how each layer is used in the layout design and pay attention to the layers for clock network and power supply.
- 5、Why do you want to minimize the number of vias in layout?
5选1,写一个不少于3000字的报告
最后的报告没有特殊格式限制,没有内容限制,只要是跟集成电路领域有关的任何技术都可以写
- 1、集成电路的设计与制造领域涉及非常多的技术:微电子工艺、半导体材料、EDA工具、ATE测试仪、光刻机、FPGA、封装、… 建议大家选择跟自己专业背景相关的方向写;
- 2、多用图、表~~~,大部分文字其实也是用来说明图、表的。
Topic2 Homework
1、For the power network to module A,B,C (right figure), which scheme is better ? Why?
2、课本 4.14、4.15 、4.16 习题
4.14 使用bufif0和bufif1设计一个二选一多路选择器,如下图所示。
4.15、编写带三态输出和低有效Output_Enable输入的4选1多路选择器的Verilog代码。该多路选择器有4个数据输入(d0,d1,d2和d3)和2个选择输入(s1和s0)。采用case和if语句。
4.16、编写一个4比特加法器-减法器的Verilog描述,当as为1时相加,为0时相减。
3、 Write a Verilog HDL code that represents an eight-bit Johnson counter.
(或在4.20、 4.21、4.22 中选作一题)
4.20、设计一个具有并行输入和输出的8比特移位器,sin_1 和 sin_r 为输入,shift 和 paralle 为控制信号。当信号shift有效时,在sin_1和sin_r上的数据分别被送到寄存器的最高和最低有效位,而寄存器的第3位和第4位被送到一个2比特的out输出上。如果该单元工作在并行模式,则没有移位。
4.21、设计一个在其串行输入中检测 100 和 001 序列的Mealy型状态机序列检测器。假设一个异步复位输入在其初始状态时启动该检测器。
4.22、设计并验证一个实现下降沿触发、复位低电平有效的D触发器的UDP。
4、试比较以下3段代码的综合结果,并说明有什么差别?为什么?
module multiple_reg_assign (output reg[4:0]data_out1, data_out2, input[3:0] data_a, data_b, data_c, data_d, input sel, clk);
always @ (posedge clk) begin
data_out1 = data_a + data_b ;
data_out2 = data_out1 + data_c;
if (sel == 1‘b0) data_out1 = data_out2 + data_d;
end
endmodule
module expression_sub (output reg [4: 0] data_out1, data_out2,input[3: 0] data_a, data_b, data_c, data_d, input sel, clk);
always @ (posedge clk) begin
data_out2 = data_a + data_b + data_c;
if (sel == 1'b0) data_out1 = data_a + data_b + data_c + data_d;
else data_out1 = data_a + data_b;
end
endmodule
module expression_sub_nb (output reg[4:0]data_out1nb, data_out2nb, input[3:0]data_a, data_b, data_c, data_d, input sel, clk) ;
always @ (posedge clk) begin
data_out2nb <= data_a + data_b + data_c;
if (sel == 1'b0) data_out1nb <= data_a + data_b + data_c + data_d;
else data_out1nb <= data_a + data_b;
end
endmodule
Topic3 Homework
1、Evaluate the performance of the following two sections of the Verilog code.
module adder ( output reg [7:0] Sum,
input [7:0] A, B, C,
input clk );
reg [7:0] rA, rB, rC;
always @(posedge cIk)
begin
rA <=A;
rB <= B;
rC <= C;
Sum <= rA + rB + rC;
end
endmodule
module adder ( output reg [7:0] Sum,
input [7:0] A, B, C,
input clk );
reg [7 : 0] rABSum, rC;
always @(posedge clk)
begin
rABSum <= A + B;
rC <= C;
Sum <= rABSum + rC;
end
endmodule
2、课本 4.11、5.9、5.10 、6.2 习题
第2次印刷的教材版本中5.9 5.10 <==> 第3次印刷的教材版本中的5.1 5.2
4.11、计算图 P4-1 中的电路的每条输入到输出路径的延迟。使用路径延迟模型写 Verilog 描述。请使用 specify 语句。
5.9、设计并验证符合下面规范的4位二进制同步计数器的Verilog模型:下降沿同步、同步装载与复位、数据并行装载和低有效使能计数。
5.10、设计并验证4位BCD计数器的Verilog模型。
6.2、图P6-2所示的DFG(Data Flow Graph)节点已经标出了传输延迟,求该电路中流水线寄存器的最佳放置位置。
Topic4 Homework
1、一个需要工作在100MHz的64位计数器描述如下,但综合后无论怎么改变布局和布线,该计数器都只能工作在90MHz。请在保证电路功能的情况下,修改语句使该计数器工作在100MHz。
module ttt(out,rst,clk,start);
output [63:0] out;
input rst,clk,start;
reg [63:0] out;
always @(posedge clk or negedge rst)
begin
if(rst==0) out<=64'b0;
else if(start==0) out<=out+1;
else out<=0;
end
endmodule
2、问题描述如下:
- An eighth-order Gaussian, lowpass FIR filter is modeled by FIR_Gaussian_Lowpass.
- The fully synchronous, with active-high synchronous reset
- Unsigned 8-bit words tap coefficients
- Even-symmetric to guarantee that the phase characteristic will be linear
Questions: If clock=1GHz,
Bandwidth=?
3、一个四级流水线电路要求如下:
(a)设计这个分块电路的模块图,显示控制单元,数据通道单元,输入和输出信号以及在控制和数据通道单元之间的接口信号;
(c)设计并验证该电路的Verilog模型。该电路的输出就是32位的寄存器R0的内容。
参考
直接参考
- verilog 4位4选1多路选择器(代码+仿真)
- ASIC第二次作业
- 约翰逊(Johnson)计数器
- Johnson计数器
- Verilog HDL数字设计与综合(第二版) 第十章课后习题答案
- 实验一verilog门级建模
- Verilog 编程实验(2)-4位2选1多路选择器的设计与实现
- 用verilog语言描述4比特加减法器
- 四级流水电路(实例代码)
- ASIC第四次作业报告
间接参考
- 可编程ASIC设计及应用 [李广军]设计流程.ppt
- 李广军-ASIC设计-习题答案_Chapter_3_Solutions
- 李广军-ASIC设计-习题答案_Chapter_5_Solutions
- 可编程ASIC技术课程作业
- ASIC第二次实验
- ch4-1 2014
- ch11-2014
- 1-2 Verilog 4位 二选一 多路选择器
- 【FPGA】4选1多路选择器原理、设计
- 多路选择器,加法器原理及verilog实现
- 怎样用Verilog实现4选1数据选择器
- 如何解决Verilog中参数化的赋值:赋全0,赋全1,赋全Z,赋全x
- 数字IC设计学习笔记_verilog实现BCD计数器
- 基于verilog的BCD计数器设计与验证