Module ALU TOPCác module tính toán Chọn output theo tín hiện cmd Hình 2-1: Khối ALU 4 bit - Khối tính toán ADD: bằng cách ghép 4 khối adder_1bit lại với nhau... - Khối tính toán AND: bằn
Trang 1KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ
-o0o -QUY TRÌNH THIẾT KẾ
CÁO LAB 1 THIẾT KẾ BỘ ALU
GVHD: PGS.TS Hoàng TrangTGHD: Đỗ Quang Thịnh NTH: Nhóm 9
TPHCM, THÁNG 9 NĂM 2021
Trang 2DANH SÁCH THÀNH VIÊN NHÓM 9
1 Nguyễn Thái Nguyên (Nhóm trưởng) 1712386 nguyen.nguyen29091999@hcmut.edu.vn 0977331297
Trang 3MỤC LỤC
1 Tổng quan lý thuyết 5
1.1 Thiết kế cấp độ Speccification 5
2 Thực hiện thiết kế 6
2.1 Mạch thiết kế cấp cổng dùng Verilog 6
2.2 Môi trường làm việc 10
2.2.1 File set_env.bash: 10
2.2.2 File lab_rtl.flist: 10
2.2.3 File lab_ben.flist: 10
2.2.4 File Makefile: 11
2.3 Kiểm định RTL 11
2.3.1 File testtop.v 11
2.3.2 Kết quả hiển thị ở terminal sau khi make 12
2.3.3 Dạng sóng của thiết kế 12
2.4 Synthesis 13
2.4.1 File dc_command.src 13
2.4.2 File ALU sau khi Synthesis 15
2.4.3 File reports 16
3 Kết luận 19
3.1 Nhận xét 19
3.2 Kết luận 19
4 Phục lục 19
5 Tài liệu tham khảo 19
6 Câu hỏi lý thuyết 19
6.1 Phân biệt các tool trong RTL 19
6.2 Giải thích ý nghĩa 20
6.3 Bonus 21
6.4 Đầu vào và đầu ra của Synthesis 21
Trang 4DANH 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
Trang 51 Tổng quan lý thuyết
Speccification
a Sơ đồ khối bộ ALU
Hình 1-1: Sơ đồ khối bộ ALU
Trang 6b 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
vào giá trị cmd để assign
Trang 7Module ALU (TOP)
Các module tính toán
Chọn output theo tín hiện cmd
Hình 2-1: Khối ALU 4 bit
- Khối tính toán ADD: bằng cách ghép 4 khối adder_1bit lại với nhau
Module add
4 bitModule add
1 bit
Hình 2-2: Khối ADD 4 bit
Hình 2-3: Khối ADD 1 bit
Trang 8- Khối tính toá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
ADD)
Trang 10Hình 2-9: Khối XOR 1 bit
Trang 11Hình 2-13: File Makefile
2.3 Kiểm định RTL
2.3.1 File testtop.v
Hình 2-14: File testtop.v
- Test đầy đủ các trường hợp bằng cách thay đổi biến cmd từ 00 01 10 11
Trang 122.3.2 Kết quả hiển thị ở terminal sau khi make
Hình 2-15: Kết quả ở terminal sau khi make
hiện phép OR o Cmd: 11 thực hiện phép XOR
- Phần bên trái là các biến của thiết kế: input, output, biến tạm, …
Hình 2-16: Kết quả dạng sóng của thiết kế
Trang 132.4.1 File dc_command.src
Hình 2-17: File dc_command.src
Giải thích file dc_command.src [1]
của các standard cell, unit attributes, process,voltage, temperature operation, Vth, delay of cell,
65mn, Vth: high voltage threshold, Process: fastfast, Voltage: 1.32V, Temperature: 0oC) và chọnfile dạng mã hóa nhị phân
Trang 14(định dạng file kiểu kết quả mẫu vào thư viện cụ thể có dạng specialize
cấu hình
gate_logic và optimization trên thiết kế hiện tạiCompile_ultra: Biểu diễn high-effort trên thiết kếhiện tại cho chất lượng kết quả tốt hơn (QoR)
hiện tại
(timing path groups, DRV, tổng cell, area,constrains,
Trang 15Tổng thể khối ALU:
tên, input, output
Trang 162.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)
Tên của cell trong design
Total delay: cell delay + net delay
Lib_cell
Hình 2-19: File report.timing
Delay cộng dồn qua từng phần tử Rise or Fall
Trang 1721 22
-23
25
Trang 1843 Buf/Inv Area: 10.080000
58 59
Trang 19-3 Kết luận
3.1 Nhận xét
đơn giản, không có nhiều chế độ tính toán, tuy nhiên với một số cá nhân không nhớ syntax của verilog
là 1 trở ngại
khăn
3.2 Kết luận
và biết được môi trường làm việc sau này sẽ như thế nào
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
Trang 206.2 Giải thích ý nghĩa
code thiết kế VHDL và Verilog Vlogan phân tích thiết kế vàlưu trữ các tệp trung gian trong thiết kế hoặc thư viện làmviệc
o –full64: Phân tích thiết kế với mô phỏng 64bit
o –work library: ánh xạ tên thư viện thiết kế vào tên thư
viện logic WORK Library là đường dẫn vật lý tưngứng với tên thư viện logic được xác định trong setupfile
o –f filename: xác định file chứa danh sách các file
verilog
o –l filename: xác định log file nơi là VCS ghi lại các
lịch sử các dòng lệnh và kết quả dòng lệnh đã đượcthực thi
o –full64: Phân tích thiết kế với mô phỏng 64bit
o –R: RIG options
o –debug_access: cho phép gỡ lỗi sau quá trình
o –f filename: chỉ định một tệp chưa danh sách tên
đường dẫn đến các tệp nguồn và các tùy chọn thời gianbiên dịch
o –l filename: xác định log file nơi là VCS ghi lại cáclịch sử các dòng lệnh và kết quả dòng lệnh đã đượcthực thi
Trang 21- Những lệnh này nằm ở SP2/bin
/home/albert/MyPrograms/synopsys/M-2017.03-Hình 6-1: Nơi chứa lệnh vlogan & vcs
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)