Tải bản đầy đủ (.docx) (23 trang)

QUY TRÌNH THIẾT kế sản XUẤT VI MẠCH báo cáo LAB 1 THIẾT kế bộ ALU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1003.03 KB, 23 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MƠN ĐIỆN TỬ
---------------o0o---------------

QUY TRÌNH THIẾT KẾ
&

SẢN XUẤT VI MẠCH BÁO

CÁO LAB 1 THIẾT KẾ BỘ ALU

GVHD: PGS.TS Hồng Trang

TGHD: Đỗ Quang Thịnh
NTH: Nhóm 9

TPHCM, THÁNG 9 NĂM 2021

download by :


2 Quy trình thiết kế và sản xuất vi mạch

DANH SÁCH T
Stt

Họ và tên

1



Nguyễn Thái Nguyên (Nhóm trưởng)

2

Phạm Đăng Long

3

Trần Văn Thành

download by :


3

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

MỤC LỤC
1

Tổng quan lý thuyết .....................................................................................................
1.1

2

Thực hiện thiết kế ........................................................................................................
2.1


Mạch thiết kế cấp cổng dùng Verilog .....................................

2.2

Môi trường làm việc ...............................................................

2.2.1

File set_env.bash: ................

2.2.2

File lab_rtl.flist:...................

2.2.3

File lab_ben.flist: ................

2.2.4

File Makefile: ......................

2.3

Kiểm định RTL .......................................................................

2.3.1

File testtop.v ........................


2.3.2

Kết quả hiển thị ở terminal s

2.3.3

Dạng sóng của thiết kế ........

2.4

3

Thiết kế cấp độ Speccification ...............................................

Synthesis.................................................................................

2.4.1

File dc_command.src ..........

2.4.2

File ALU sau khi Synthesis .

2.4.3

File reports ..........................

Kết luận ......................................................................................................................

3.1

Nhận xét .................................................................................

3.2

Kết luận ..................................................................................

4

Phục lục .....................................................................................................................

5

Tài liệu tham khảo .....................................................................................................

6

Câu hỏi lý thuyết........................................................................................................
6.1

Phân biệt các tool trong RTL ..................................................

6.2

Giải thích ý nghĩa ...................................................................

6.3

Bonus .....................................................................................


6.4

Đầu vào và đầu ra của Synthesis. ...........................................

download by :


4

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

DANH SÁCH HÌNH ẢNH
Hình 1-1: Sơ đồ khối bộ ALU......................................................................................................... 5
Hình 2-1: Khối ALU 4 bit................................................................................................................7
Hình 2-2: Khối ADD 4 bit............................................................................................................... 7
Hình 2-3: Khối ADD 1 bit............................................................................................................... 7
Hình 2-4: Khối AND 4 bit............................................................................................................... 8
Hình 2-5: Khối AND 1 bit...............................................................................................................8
Hình 2-6: Khối OR 4 bit..................................................................................................................9
Hình 2-7: Khối OR 1 bit..................................................................................................................9
Hình 2-8: Khối XOR 4 bit............................................................................................................... 9
Hình 2-9: Khối XOR 1 bit............................................................................................................. 10
Hình 2-10: Khối control................................................................................................................ 10
Hình 2-11: Fie lab_rtl.flist.............................................................................................................10
Hình 2-12: File lab_ben.flist..........................................................................................................10
Hình 2-13: File Makefile...............................................................................................................11
Hình 2-14: File testtop.v................................................................................................................11

Hình 2-15: Kết quả ở terminal sau khi make.................................................................................12
Hình 2-16: Kết quả dạng sóng của thiết kế................................................................................... 12
Hình 2-17: File dc_command.src.................................................................................................. 13
Hình 2-18: File report.area............................................................................................................ 16
Hình 2-19: File report.timing.........................................................................................................16
Hình 6-1: Nơi chứa lệnh vlogan & vcs..........................................................................................21

download by :


5

Quy trình thiết kế và sản xuất vi mạch

1

Lab1:Thiết kế bộ ALU

Tổng quan lý thuyết
1.1 Thiết kế cấp độ Speccification
a. Sơ đồ khối bộ ALU

Hình 1-1: Sơ đồ khối bộ ALU

download by :


6

Quy trình thiết kế và sản xuất vi mạch


Lab1:Thiết kế bộ ALU

b. Cách thức hoạt động của bộ ALU
- Khối input:
o A, B: 2 dữ liệu đầu vào 4 bit.
o Cmd: Tín hiệu control 2 bit,
- Khối xử lý:
o Khối cộng 4 bit
o Khối and 4 bit
o Khối or 4 bit o
Khối xor 4 bit
- Khối output:
o Cmd = 00: Ngõ ra là phép cộng A + B.
o Cmd = 01: Ngõ ra là phép A AND B (A&B)
o Cmd = 10: Ngõ ra là phép A OR B (A|B)
o Cmd = 11: Ngõ ra là phép A XOR B (A^B)
c. Ý tưởng thực thi thiết kế
-

Việc đầu tiên là hình thành sơ đồ khối của thiết kế

-

Viết các khối xử lý đơn giản add_1bit, and_1bit, or_1bit, xor_1bit.

-

Viết các khối xử lý lớn add_4bit, and_4bit, or_4bit, xor_4bit từ các khối


đơn giản.
-

2

Viết khối ALU dựa vào input và chọn output từ tín hiệu điều khiển cmd.

Thực hiện thiết kế
2.1 Mạch thiết kế cấp cổng dùng Verilog
Khối
ALU tổng thể: o
Input:



o Output:

X, Y: 4 bit



Cmd: 2 bit



S: 4 bit



ol (overlow) 1 bit.


o Biến tạm: S_add; S_and; S_or; S_xor cho 4 khối tính tốn.
o S cuối cùng dựa vào giá trị cmd để assign.


download by :


7

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

Module ALU (TOP)

Các module tính tốn

Chọn output theo tín hiện cmd

Hình 2-1: Khối ALU 4 bit

- Khối tính tốn ADD: bằng cách ghép 4 khối adder_1bit lại với nhau.
Module add
4 bit
Module add
1 bit

Hình 2-2: Khối ADD 4 bit


Hình 2-3: Khối ADD 1 bit

download by :


8

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

- Khối tính tốn AND: bằng cách ghét 4 khối and_1bit lại với nhau.
(chú thích tương tự khối ADD)

Hình 2-4: Khối AND 4 bit

Hình 2-5: Khối AND 1 bit

- Khối xử lý OR: bằng cách ghét 4 khối or_1bit lại với nhau (chú thích
tương tự khối ADD)

download by :


9

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU


Hình 2-6: Khối OR 4 bit

Hình 2-7: Khối OR 1 bit

- Khối tính tốn XOR: bằng cách ghét 4 khối xor_1bit lại với nhau (chú
thích tương tự khối ADD)

Hình 2-8: Khối XOR 4 bit

download by :


10

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

Hình 2-9: Khối XOR 1 bit

- Khối control: chúng ta assign để chọn giá trị đầu ra phù hợp.

Hình 2-10: Khối control

2.2 Môi trường làm việc
2.2.1 File set_env.bash:

export WORKAREA="/home/albert/Desktop/Lab1_HW"
2.2.2 File lab_rtl.flist:


Hình 2-11: Fie lab_rtl.flist

2.2.3 File lab_ben.flist:

Hình 2-12: File lab_ben.flist

download by :


11

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.2.4 File Makefile:

Hình 2-13: File Makefile

2.3 Kiểm định RTL
2.3.1 File testtop.v

Hình 2-14: File testtop.v

- Set input, gọi module alu_4bit.
- Test đầy đủ các trường hợp bằng cách thay đổi biến cmd từ 00 01 10 11.

download by :



12

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.3.2 Kết quả hiển thị ở terminal sau khi make

Hình 2-15: Kết quả ở terminal sau khi make

- Cột đầu tiên là delay của từng trường hợp.
- Cột thứ 2:
o Cmd: 00 thực hiện phép ADD.
o Cmd: 01 thực hiện phép AND.
o Cmd: 10 thực hiện phép OR. o
Cmd: 11 thực hiện phép XOR.
- Cột thứ 3: giá trị input X.
- Cột thứ 4: giá trị input Y.
- Cột thứ 5: giá trị output ol (x: giá trị không xác định).
- Cột thứ 6: giá trị output S.
2.3.3 Dạng sóng của thiết kế

- Kết quả mơ phỏng được thể hiện ở hình bên dưới.
- Phần bên trái là các biến của thiết kế: input, output, biến tạm, …
- Phần bên trái kết quả dạng sóng thể hiện ở dạng nhị phân.

Hình 2-16: Kết quả dạng sóng của thiết kế

download by :



13

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.4 Synthesis
2.4.1 File dc_command.src

Hình 2-17: File dc_command.src

Giải thích file dc_command.src [1]
Search_path

Set
Target_library

download by :


14

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

Analyse –format
(định dạng file kiểu
verilog or vhdl)

Elaborate
design_name
Current_design
Compile_ultra
Command

Report_area
Report_timing
Report_constraint
Reprort_qor

download by :


15

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.4.2 File ALU sau khi Synthesis

Tổng thể khối ALU:
tên, input, output

download by :


16


Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.4.3 File reports

2.4.3.1 Report.area

Thư viện được sử dụng

Tổng diện tích cổng tổ hợp
Tổng diện tích của inverter/buffer
………

Hình 2-18: File report.area

2.4.3.2 Report.timing
Điểm đầu, điểm cuối của 1 timing path

Path group: Nhóm clock
Path type: max (tính setup), min (hold)

Total delay: cell
delay + net delay

Delay cộng dồn
qua từng phần tử
Rise or Fall

Lib_cell


Tên của cell
trong design

Hình 2-19: File report.timing

download by :


17

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

2.4.3.3 Report.qor
1
2
3
4
5
6
7
8
9

****************************************
Report : qor
Design : alu_4bit
Version: L-2016.03-SP1

Date : Sat Oct 9 09:56:41 2021
****************************************
10 Timing Path Group (none)
11 ----------------------------------12 Levels of Logic:
13 Critical Path Length:
14 Critical Path Slack:
15 Critical Path Clk Period:
16 Total Negative Slack:
17 No. of Violating Paths:
18 Worst Hold Violation:
19 Total Hold Violation:
20 No. of Hold Violations:
21 -----------------------------------

22
23
24 Cell Count
25 ----------------------------------26 Hierarchical Cell Count:
27 Hierarchical Port Count:
28 Leaf Cell Count:
29 Buf/Inv Cell Count:
30 Buf Cell Count:
31 Inv Cell Count:
32 CT Buf/Inv Cell Count:
33 Combinational Cell Count:
34 Sequential Cell Count:
35 Macro Count:
36----------------------------------37
38
39

40
41
42

Area
----------------------------------Combinational Area:93.599999
Noncombinational Area: 0.000000

download by :


18

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

43 Buf/Inv Area:
44 Total Buffer Area:
45 Total Inverter Area:
46 Macro/Black Box Area:
47 Net Area:
48 ----------------------------------49 Cell Area:
50 Design Area:
51
52
53 Design Rules
54 ----------------------------------55
56
57

58
59
60

Total Number of Nets:
Nets With Violations:
Max Trans Violations:
-----------------------------------

61 Hostname: localhost.localdomain
62
63 Compile CPU Statistics
64 ----------------------------------------65 Resource Sharing:
66 Logic Optimization:
67 Mapping Optimization:
68 ----------------------------------------69 Overall Compile Time:
70 Overall Compile Wall Clock Time: 10.86
71
72 -------------------------------------------------------------------73
74 Design WNS: 0.00 TNS: 0.00 Number of Violating Paths: 0
75
76
77 Design (Hold) WNS: 0.00 TNS: 0.00 Number of Violating Paths: 0
78
79 --------------------------------------------------------------------

download by :


19


Quy trình thiết kế và sản xuất vi mạch

3

Lab1:Thiết kế bộ ALU

Kết luận
3.1 Nhận xét
- Mạch thiết kế ALU này là dạng cơ bản của một khối ALU, các chức
năng ở dạng đơn giản, khơng có nhiều chế độ tính tốn, tuy nhiên với một
số cá nhân khơng nhớ syntax của verilog là 1 trở ngại.
- Việc xây dựng khối ALU này được dựa trên các khối cơ bản khác nhau.
- Sinh viên chưa làm quen với Linux và đặt biệt là flow của thiết kế sẽ
gặp nhiều khó khăn.
3.2 Kết luận
- Sau khi thực hiện khối ALU 4 chức năng giúp sinh viên ôn lại kiến thức
code verilog và biết được môi trường làm việc sau này sẽ như thế nào.
- Giúp sinh viên hiểu được những bước đầu trong quá trình thiết kế vi mạch.
- Giúp sinh viên nắm được cơ bản các tool trong các bước thiết kế vi mạch.
- Nắm được cách sử dụng Linux là một lợi thế lớn để xin việc sau này.

4

Phục lục

5

Tài liệu tham khảo
- Synthesis Tool Commands (DC_Tool_Commands) [1]

- VCS® MX/VCS MXi™ User Guide [2]
- Tài liệu hướng dẫn thí nghiệm Quy trình thiết kế vi mạch số.

6

Câu hỏi lý thuyết
6.1 Phân biệt các tool trong RTL
Chức năng
Mô phỏng RTL
Xem dạng sóng RTL
Synthesis RTL

download by :


20

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

6.2 Giải thích ý nghĩa
Commands
Vlogan

Vcs

download by :



21

Quy trình thiết kế và sản xuất vi mạch

Lab1:Thiết kế bộ ALU

6.3 Bonus
- Những lệnh này nằm ở /home/albert/MyPrograms/synopsys/M-2017.03SP2/bin

Hình 6-1: Nơi chứa lệnh vlogan & vcs

- Một số lệnh Synopsys hỗ trợ: vmmgen, plato, vcat, rvmgen …
6.4 Đầu vào và đầu ra của Synthesis.
- Đầu vào: thư viện (<file>.db), RTL verilog code (<file>. v),
constrains (<file>.txt)
- Đầu ra: Verilog primitive (<file>. v), Timing information (<file>.sdf),
DC compiler report (<file>.log), Synthesis database (<file>. ddc)

-------------------Hết-------------------


download by :



×