thiết kế ic đồng hồ số

72
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG BÀI TẬP LỚN MÔN THIẾT KẾ VLSI ĐỀ TÀI: THIẾT KẾ ĐỒNG HỒ SỐ Giảng viên hướng dẫn : Ts Nguyễn Vũ Thắng Nhóm sinh viên thực hiện: Nguyễn Văn Thoan - 20092602 - ĐTVT06

Upload: ha-giang

Post on 03-Jan-2016

376 views

Category:

Documents


4 download

DESCRIPTION

baos caos bt

TRANSCRIPT

Page 1: Thiết kế IC đồng hồ số

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ VIỄN THÔNG

BÀI TẬP LỚN

MÔN THIẾT KẾ VLSI

ĐỀ TÀI: THIẾT KẾ ĐỒNG HỒ SỐ

Giảng viên hướng dẫn : Ts Nguyễn Vũ Thắng

Nhóm sinh viên thực hiện:

Nguyễn Văn Thoan - 20092602 - ĐTVT06

Nguyễn Hà Giang - 20090860 - ĐTVT11

Phùng Mạnh Hưng - 20093902 -ĐTVT12

Nguyễn Xuân Thắng

Hà Nội 3/2013

Page 2: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

MỤC LỤCMỤC LỤC........................................................................................................2

A. MÔ TẢ CHI TIẾT THIẾT KẾ................................................................3

1. Tổng quan...............................................................................................3

1.1. Yêu cầu chức năng...............................................................................3

1.2. Yêu cầu phi chức năng.........................................................................3

2. Sơ đồ khối...............................................................................................3

2.1 Sơ đồ khối tổng quát..........................................................................3

2.2 Sơ đồ khối chi tiết..............................................................................4

2.3 sơ đồ nối dây bên trong.....................................................................5

2.4 Mô tả chức năng từng khối................................................................6

3. Thiết kế chi tiết từng khối.....................................................................6

3.1 Khối điều chỉnh....................................................................................6

3.2 COUNTER............................................................................................7

3.3 Khối giải mã LED 7 thanh..................................................................10

B. PHẦN MỀM SYNOPSYS......................................................................12

1. Check leda và mô phỏng timing.........................................................12

2. Design Compile....................................................................................18

3. Mô phỏng lại sau khi DC.....................................................................32

4. Fomality................................................................................................34

5. Primetime.............................................................................................39

6. ICC........................................................................................................42

KẾT LUẬN....................................................................................................56

2

Page 3: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tài Liệu Tham Khảo.....................................................................................57

A. MÔ TẢ CHI TIẾT THIẾT KẾ

1. Tổng quan

1.1. Yêu cầu chức năng

IC đồng hồ số có chức năng đếm từ 00:00:00 đến 23:59:59

Có hai nút bấm (M,H) điều chỉnh giờ, phút, giây.

Đầu ra hiển thị trực tiếp lên led 7 thanh

Có chân reset không đồng bộ, chân enable đồng bộ

1.2. Yêu cầu phi chức năng

Mô tả thiết kế sử dụng ngôn ngữ Verilog

Tổng hợp thiết kế, mô phỏng và layout sử dụng phần mềm synopsys

Hoàn thiện thiết kế trong thời gian 8 tuần

2. Sơ đồ khối

2.1 . Sơ đồ khối tổng quát

3

Page 4: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tên chân Chức năng

Clock Cấp tín hiệu xung clock cho IC

Reset Reset đồng hồ về trạng thái khởi tạo ban đầu

Output Các tín hiệu đầu ra để đưa đến led 7 thanh

VDD,GND Chân cấp nguồn cho IC hoạt động

H,M Điều chỉnh thời gian giờ, phút, giây

2.2 Sơ đồ khối chi tiết

4

Page 5: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

2.3 Sơ đồ nối dây bên trong

5

Page 6: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

2.4 Mô tả chức năng từng khối

Bộ điều chỉnh: có nhiệm vụ điều chỉnh giờ, phút, giây

Bộ đếm: có nhiệm vụ đếm thời gian, đầu ra đưa vào bộ giải mã

Bộ giải mã: Giải mã tín hiệu ra của bộ đếm để đưa ra hiển thị trên led 7 thanh.

LED 7 thanh : Hiển thị giá trị giờ, phút, giây.

3. Thiết kế chi tiết từng khối

3.1 Khối điều chỉnh

6

Page 7: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Khối điều chỉnh có nhiệm vụ điều chỉnh thời gian,có 2 nút bấm M và H để

điều chỉnh.

M = 0 và H = 0 các bộ đếm giờ, phút, giây hoạt động bình thường theo

xung clock.(Couter giây hoạt động theo clock ngoài, counter phút hoạt

động theo clock_out của counter giây, counter giờ hoạt động theo

clock_out của counter phút).

M = 0 và H = 1 lúc đó đếm giây sẽ tự tăng theo xung clock còn phút và

giờ không thay đổi ( lúc này chân clock vào của counter đơn vị phút và

giờ bằng 0. Clock_in của giây bằng với clock ngoài 1 giây tăng 1 đơn

vị)

M = 1 và H = 0 lúc đó đếm phút sẽ tự tăng theo xung clock còn giây và

giờ không thay đổi (lúc này chân clock vào của counter đơn vị giây và

giờ bằng 0. Clock_in của counter phút bằng với clock ngoài 1 giây

tăng 1 đơn vị)

M = 1 và H =1 lúc đó đếm giờ sẽ tự tăng theo xung clock còn giây và

phút không thay đổi.( lúc này chân clock vào của counter đơn vị giây và

phút bằng 0. Clock_in của giờ bằng với clock ngoài 1 giây tăng 1 đơn

vị. )

Sơ đồ thuật toán

7

Page 8: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

3.2 Khối Counter

Khối counter thực hiện chức năng đếm: tăng giá trị output lên 1 khi có

sườn xuống của xung clock. Khi có tín hiệu reset thì output được gán

bằng 0

Sơ đồ khối

clk_in bcd_out

set

reset clk_out

Các đầu vào đầu ra

8

COUNTER

Page 9: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tên chân I/O Số bit Nhiệm vụ

clk_in I 1 Sườn lên của tín hiệu là điều kiện để thực hiện

chức năng đếm

set I 1 Thiết lập giới hạn cho bộ đếm

reset I 1 Thiết lập lại các giá trị của bộ đếm

bcd_out O 4 Đầu ra là mã BCD, tăng lên 1 đơn vị khi có

sườn lên của xung clock

Để thực hiện chức năng đếm giờ thì ta cần 6 bộ đếm cho các giá trị giờ,

phút giây :

Đầu vào của bộ đếm hàng đơn vị giây là xung clock 1 Hz tức là cứ 1

xung thì tăng giá trị lên 1 khi output= “1001” thì reset về “0000”, bit

output[3] được đưa vào làm đầu vào cho clock bộ đếm hàng chục giây

khi output=”0101” thì reset về “0000”.

Tương tự với các bộ đếm phút.

Bộ đếm giờ : tương tự như trên thêm 1 trạng thái reset khi 23:59:59

Sơ đồ thuật toán

9

Page 10: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Mô phỏng tín hiệu của bộ đếm (Counter)

3.3 Khối giải mã LED 7 thanh

Thực hiện chức năng giải mã : Đầu vào là mã BCD của bộ đếm, đầu ra là

tín hiệu điều khiển led 7 thanh

Các đầu vào đầu ra

Tên chân I/O Số bit Nhiệm vụ

Input I 4 Mã BCD lấy từ bộ đếm

Output O 7 Đầu ra tương ứng mã BCD để điều khiển led 7

thanh

10

Page 11: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Sơ đồ thuật toán

11

Page 12: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bảng giá trị

Đầu vào Đầu ra Giá trị hiển thị

0 0 0 0 1 1 1 1 1 1 0 0

0 0 0 1 0 1 1 0 0 0 0 1

0 0 1 0 1 1 0 1 1 0 1 2

0 0 1 1 1 1 1 1 0 0 1 3

0 1 0 0 0 1 1 0 0 1 1 4

0 1 0 1 1 0 1 1 0 1 1 5

0 1 1 0 1 0 1 1 1 1 1 6

0 1 1 1 1 1 1 0 0 0 0 7

1 0 0 0 1 1 1 1 1 1 1 8

1 0 0 1 1 1 1 1 0 1 1 9

12

Page 13: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

B. PHẦN MỀM SYNOPSYS

1. Check leda và mô phỏng timing

Leda là công cụ khá đơn giản trong các phần mềm synopsys giúp người dùng có thể

kiểm tra khả năng tổ hợp của các code RTL của mình

Dưới đây là hướng dẫn sử dụng công cụ này :

Đầu tiên khởi chạy phần mềm synopsys trên terminal sau đó chạy leda bằng

câu lệnh “leda” màn hình chương trình chạy lên chọn New project → ok.

13

Page 14: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Khi các cửa sổ khác hiện lên chọn next ,click chọn năm 2001,chọn next tới

khi chương trình hỏi add file chúng ta sẽ add tất cả các file code RTL của

thiết kế vào (trừ file tesbench) → ok

14

Page 15: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tại cửa sổ unit name ta chọn module mà muốn test sau đó chọn

Tesclock/reset

15

Page 16: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Sau đó chọn chân tín hiệu muốn test click vào mũi tên như hình dưới

Chọn ok để bắt đầu kiểm tra.

Hình dưới là kết quả kiểm tra :

16

Page 17: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Chúng ta có thể chuyển sang phần tiếp theo là mô phỏng timing của code

RTL xem có đúng chức năng không

Chúng ta sẽ tạo một foder chứa tất cả file code RTL sau đó mở terminal ở

foder đó rồi gõ lệnh

vcs –debug +v2k *.v

Sau khi debug sẽ tạo ra file simv là file mô phỏng timing của mạch ,chúng ta

mở file simv bằng lệnh :

./simv –gui

Kết quả mô phỏng như sau :

17

Page 18: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

18

Page 19: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

2. Design Compile

DC dùng để thực hiện tổ hợp mạch logic mức cổng và tối ưu mạch logic mức

cổng

Tạo foder DC sau đó bật terminal tại forder đó

Bước1: (chạy chương trình)

Gõ lệnh dc_shell –gui để chạy DC như hình dưới

19

Page 20: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước2 (cài đặt thư viện)

Trên giao diện click vào setup → sau đó chọn các đường dẫn các file thư viện theo

chỉ dẫn

- search path /home/hoangbinh/milkyway

-targetlib

/home/hoangbinh/milkyway/tcbn45gsbwp_120a/frame_only_HVH_0d5_0/tcbn45gs

bwp/LM/tcbn45gsbwpbc.db

- symbol lib /usr/synopsys/dc/libraries/syn/generic.sdb

- synthetic lib /usr/synopsys/dc/libraries/syn/dw_foundation.sldb

- link lib bao gồm taget voi synthetic

Sau khi setup thư viện chúng ta chạy lệnh Set_svf top.svf

vào file chọn read → chọn file Digital_Clock

20

Page 21: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước 3 (analyze code RTL)

Trên giao diện DC click chọn analyze sau đó đến đường dẫn và chọn các file code

RTL (trừ file tesbench) → ok

Tiếp theo chọn file → elaborate, trên thanh design chọn Digital_Clock ok

21

Page 22: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước 4: contrain

Trước tiên click vào biểu tượng logich trên tool để tạo ra hình vẽ các khối như hình

dưới đây

Constrains clk

-click vào chân clk trên hình → chọn attributes → chọn specify clock

ở các ô clock name,rising,falling chọn thong số phù hợp có thể như hình dưới

22

Page 23: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Constrains input (en,reset) 23

Page 24: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Click cả hai chân input → chọn attributes → chọn input delay rồi cấu hình như

hình dưới

Constrains output

Giữ ctrl chọn cả 6 chân output → click attributes → chọn output delay và điền các

thông số như dưới đây

24

Page 25: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tương tự chúng ta cài đặt wire load bằng chọn

click attributes → wireload sau đó chọn như hình dưới → chọn ok

25

Page 26: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước 5 (compile)

Bao gồm 2 bước compile design và compile ultra

- compile design : click design → compile design

compile ultra : click design compile ultra biên dich tối ưu mạch

Lệnh compile_ultra (tối ưu mặc định)

- Thực hiện 3 bước tối ưu:

+ Tối ưu mức kiến trúc (High level optimization)

26

Page 27: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+ Tối ưu mức logic ( GTECH optimization )

+ Tối ưu mức cổng ( mapping optimization)

- Tối ưu tài nguyên (minimize area) sau khi các ràng buộc về thời gian đã

được áp dụng.

- Sử dụng thư viện Design Ware để tối ưu.

- Trong chế độ Topo, chương trình giả lập đặt linh kiện và đi giây để tính toán

điện trở và tụ điện ký sinh.

27

Page 28: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Sau khi compile chúng ta thức hiện tạo các file để thực hiện cho các phần sau

- Top.v là file thể hiện mức cổng được tạo ra bằng việc save as trong khi thực hiện

- Top.ddc dùng cho phần ICC và PT cũng được tạo bằng save as

- Top.svf là file chạy mô phỏng trong FM tạo ra bằng việc thực hiện câu lệnh

28

Page 29: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Set_svf top.svf //chú ý lệnh này phải được thực hiện ngay khi setup thư viện của DC

và tắt ngay sau khi tạo ra 4 file bằng lệnh set_svf -off

-Top.sdc dùng cho phần layout ICC được tạo bằng câu lệnh

Write_sdc top.sdc

-Top.sdf sử dụng trong việc mô phỏng lại timing trong DVE tạo ra bằng câu lệnh

Write_sdf top.sdf

Dưới đây là hình ảnh cho việc save as ra hai file top.v và top.ddc

29

Page 30: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

3. Mô phỏng lại sau khi DC

Sau khi chạy xong phần DC chúng ta đã tạo được các file top.v ,top.sdf là các file

biên dịch và có tối ưu do vậy chúng ta cần mô phỏng timing và file top.sdf sẽ cho

chúng ta xem được độ trễ của mạch .

Bước1

chúng ta tạo foder rồi copy các file Top.v , tesbench.v, top.sdf, tcbn45gsbwp.v

(trong đó file tcbn45gsbwp.v là file trong thư viện công nghệ)

Bước2: Vào terminal chạy trong foder trên gõ lệnh biên dich file và chạy file simv

Vlogan –debug +v2k *.v //biên dịch file

Vcs -debug Digital_Clock_tb –sdf typ:Digital_Clock:top.sdf -l comp.log

Dưới đây là ảnh trong foder sau khi chạy 2 câu lệnh trên.

30

Page 31: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Sau đó để chạy mô phỏng bằng câu lệnh : ./simv -gui

Bước 3Xem timing

Chúng khác so với việc mô phỏng code RTL ban đầu là có trễ (màu vàng) khi chúng

ta zoom lên có thể nhận thấy rõ ràng

31

Page 32: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

4. Fomality

Trước tiên chúng ta tạo foder FM sau đó vào terminal cd tới forder FM

Gõ lệnh fm _shell –gui;

Chúng ta có giao diện formality như hình dưới

32

Page 33: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước1 :chọn reference chọn Verilog

Sau đó chúng ta tìm tới đường dẫn có code RTL chọn tất cả các file.v (trừ file

tesbench)

Click vào open rồi chọn loadfile.

33

Page 34: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tiếp theo click vào settopdesign chọn module top của thiết kế (ở đây chọn

donghoso.top)

Sau khi chọn click vào settop để cài đặt file top,sau đó click chọn set reference

Bước 2 : cấu hình Implementation 34

Page 35: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Trên giao diện Click Implementation chọn Verilog → sau đó tìm đến đường dẫn

chứa file top.v sau khi các bạn đã lưu ở bước chạy DC_shell sau đó click loadfile

Bước tiếp theo chúng ta phải load file.db trong thư viện mikiway sau đó loadfile

Bằng cách click vào Read DB Libraries chọn DB

35

Page 36: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước tiếp ta settopdesign → chọn file top (Digital_clock) → settop →

setimplementation

Setup bỏ qua ta sẽ sang bước tiếp theo là bước chạy match

36

Page 37: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Bước 3

Click run matching

Sau khi matching kết quả được

Bước 4 Verify

Click verify chọn verify kết quả được như hình dưới

37

Page 38: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

5. Primetime

Primetime dùng để kiểm tra timming

B1:Để chạy Primetime chúng ta tạo một foder riêng giống như các phần khác.Sau

đó bật terminal vào foder chạy câu lệnh

Pt_shell –gui

B2: setup thư viện chúng ta sẽ chạy các câu lệnh như sau

set lib_path

"/home/hoangbinh/milkyway/tcbn45gsbwp_120a/frame_only_VHV_0d5_0/tcbn45g

sbwp/LM";

- set ADDITIONAL_SEARCH_PATH "$lib_path";

- set TARGET_LIBRARY_FILES "tcbn45gsbwpbc.db";

- set_app_var search_path h"$search_path $ADDITIONAL_SEARCH_PATH"

- set_app_var target_library $TARGET_LIBRARY_FILES

- set_app_var link_library "* $target_library"

sau đó chúng ta đọc file top.ddc mà đã tạo được từ bước chạy DC bằng câu lệnh

- read_ddc /home/hoangbinh/VLSI/dc/top.ddc

B3 : chạy chương trình bằng câu lệnh : start_gui

Giao diện được như sau

B4: tạo ra các file report.txt cho thiết kế như độ trễ min,max và một số thông số

khác

Bằng cách click trên giao diện chọn timing → analysis converage để tạo file report

analysis converage

Chọn timing → report timing → edit sau đó chọn độ trễ là min hoặc max để xem

các delay

của mạch

38

Page 39: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Dưới đây là hình ảnh cho 3 file report :

39

Page 40: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

40

Page 41: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

6. ICC

- chạy lệnh 'icc_shell -gui' để bật icc.

- vào file → setup → application setup để tạo thư viện.

Chọn các đường dẫn thư viện như khi chạy Design Compiler :

41

Page 42: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

- File → create library

42

Page 43: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+Tại mục 'New library path' chọn đường dẫn muốn lưu thư viện.

+Tại mục 'New library name' đặt tên muốn lưu.

+Tại mục 'Technology file' chọn đường dẫn vào

milkyway/tcbn45gsbwp_120a/techfiles/HVH_0d5_0/ sau đó chọn số lớp metal mà

bạn muốn.

+Tại mục 'Files', click Add, chọn đường dẫn đến

milkyway/tcbn45gsbwp_120a/frame_only_HVH_0d5_0/tcbn45gsbwp

+click 'Open library'.

+ok.

- File → Import → Read DDC

+ click Add, chọn file.ddc sau khi Design Compile xong.

File → Import → Read SDC

+click Add, chọn đường dẫn đến file.sdc đã save sau khi Design Compiler

43

Page 44: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

- Window → New Layout Window

File → Set TLU+...

+ Tại mục Max, chọn đường dẫn đến

milkyway/tcbn45gsbwp_120a/techfiles/tluplus/ chọn lớp metal mong muốn. lưu ý

chọn best.

+Tại mục Min, chọn đường dẫn tương tự, nhưng chọn worst.

+Tại mục Layer, chọn đường dẫn tương tự, file 'star.map'

44

Page 45: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Để thực hiện vào terminal chạy lệnh:

+ check_library

+ check_tlu_plus_files

+ list_libs

+ check_timing

+ report_timing_requirements

+ report_disable_timing

+ report_case_analysis

+ report_clock

+ report_clock -skew

+ remove_ideal_network [get_ports]

+ save_mw_cel -as data_setup

- Thiết lập vật lý (Floorplanning) là bước quan trọng trong việc triển khai vật lí

chip. Kết quả chât lượng và tốc độ mạch phụ thuộc nhiều vào bước này.

Ta thực hiện bước này như sau:

- Floorplan → Initialize floorplan...(khởi tạo chip)

45

Page 46: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+set các thông số: core to left, core to right, core to bottom, core to top là 5.

- Preroute → Drive PG Connection

+ Chọn Manual Connection, đặt tên chân 'Power net' là VDD, 'Ground net' là VSS,

'Power Pin' là VDD, 'Ground Pin' là VSS

+ click chọn Reconnect existing tie pins.....

- Preroute → Create Rings...

+ Tại mục Nets chọn lần lượt các chân VDD, VSS

+ Set các mục offset và width cho các chân này đồng thời chọn các layer.

- Preroute → Create Power Straps...

+ Chọn Nets, chọn width, layer cho các chân VDD và VSS

- gõ lệnh trên terminal:

46

Page 47: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+ check_mv_design -power_nets

+ create_pad_rings

+ create_fp_placement

+ save_mw_cel -as floorplanned

Placement (Đặt các linh kiện) → Core Placement and Optimization

- Sắp đặt linh kiện (Placement) là quá trình đưa các phần tử logic vào vị trí

nhất định theo hang. Sau khi sắp đặt, người kĩ sư có thể đánh giá chính xác

điện dung kí sinh trong các phần tử logic. Chương trình sắp đặt các phần tử

này dựa trên các thuật toán. Các thuật toán này nhằm tối ưu việc sắp xếp

phần tử logic dựa trên thiết kế vật lý trước đó.

Lệnh chính: place_opt

- Placement → Core Placement and Optimization

+ Effort chọn high

+ Click 'Power Optimization'

+ chọn số CPU mong muốn.

Vào terminal gõ:

+ redirect -tee place_opt.timing {report_timing}

+ report_congestion -grc_based -by_layer -routing_stage global

+ save_mw_cel -as placed

+ remove_clock_uncertainty [all_clocks]

+ set_fix_hold [all_clocks]

+ clock_opt -only_hold_time -fix_hold_all_clocks

47

Page 48: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

Tổng hợp mạng xung đồng hồ

- Tổng hợp mạng xung đồng hồ (Clock Tree Synthesis ) là quá trình nhằm đảm bảo

các xung đồng hồ được phân phối đều đến tất cả mạch tuần tự trong thiết kế. Chẳng

hạn như 1 dây dẫn có nhiều đầu vào, tức là 1 dây có fan-out lớn. khi đó ta phải làm

cách nào đó cân bằng truy cập trong dây. Tùy thuộc vào độ nghiêng xung đồng hồ

(clock skew) ta thêm vào các buffer ở những đường xung đồng hồ khác nhau trong

thiết kế.

Lệnh chính: clock_opt

- clock → Core CTS and Optimization

48

Page 49: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

- gõ terminal:

+ redirect -tee clock_opt.timing {report_timing}

+ save_mw_cel -as ctsed

Kết nối các linh kiện.

- sau khi thưc hiện thiết lập vật lý và sắp xếp linh kiện, việc đi dây sẽ được

tiến hành. Đây là quá trình kết nối các linh kiện bằng dây dẫn (các đường

metal).

Quá trình đi dây được chia làm hai bước chính:

o Đi dây toàn bộ (Global Routing)

- Thiết lập các kết nối cơ bản giữa các khối dây. Mục đích chính nhằm giảm

tối thiểu tổng độ dài dây nối, độ trễ đường dài nhất. Bước này quyết định

phân phối dây dẫn (track assignment) đến mỗi kết nối.

o Đi dây chi tiết (Detail Routing)

49

Page 50: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

- Trong bước này, các kết nối thực sự giữa các dây dẫn được thực hiện. Khởi

tạo lỗ (via) và dây dẫn metal. Mục đích làm sao tối thiểu diện tích mạch, độ dài dây

dẫn, độ trễ của đường dài nhất

- Route → Core routing and Optimization

+ Effort chọn high

50

Page 51: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+ Perform power...

+ Number of CPUs

- Route → Extract RC

51

Page 52: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

52

Page 53: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

+ Consider..

+ Extract...

+ Incremental...

- gõ terminal:

+ report_design -physical

+ save_mw_cel -as routed

53

Page 54: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

54

Page 55: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

55

Page 56: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

KẾT LUẬN

56

Page 57: Thiết kế IC đồng hồ số

Thiết kế IC Đồng Hồ Số _Nhóm 11 Giảng Viên : TS Nguyễn Vũ Thắng

TÀI LIỆU THAM KHẢO

57