Trung tâm đào tạo thiết kế vi mạch Semicon


  • ĐĂNG KÝ TÀI KHOẢN ĐỂ TRUY CẬP NHIỀU TÀI LIỆU HƠN!
  • Đăng ký
    *
    *
    *
    *
    *
    Fields marked with an asterisk (*) are required.
semicon_lab.jpg

TLM (Transaction-Level Modeling) là gì ?

Email In PDF.

1. TLM là gì?

TLM (Transaction-Level Modeling) là một phần chuẩn của SystemC, là mô hình giao tiếp thông tin mức cao, mức transaction. Việc sử dụng TLM sẽ làm cho mỗi thành phần thiết kế trở nên độc lập, tránh bị ảnh hưởng bởi sự thay đổi của các thành phần khác trong môi trường. Điều này giúp cho việc tái sử dụng, mở rộng môi trường dễ dàng mà không cần phải thay đổi toàn bộ các thành phần môi trường hiện có.

 

2. Tại sao cần giao tiếp TLM?

Trong môi trường mô phỏng, một trong những vấn đề được quan tâm hàng đầu là dữ liệu được trao đổi hay di chuyển giữa các thành phần trong môi trường như thế nào. TLM là mô hình mức cao giúp sự liên kết và trao đổi dữ liệu giữa các thành phần trong môi trường mô phỏng dễ dàng hơn.

Nếu không sử dụng TLM thì có các hình thức kết nối và trao đổi dữ liệu như sau.

Giao tiếp dựa trên port là giao tiếp giữa các module thông qua kết nối các port in/out của module. Dữ liệu được trao đổi thông qua các port của module. Ví dụ như giao tiếp của module producer và consumer như sau:

 

Ở đây, các tín hiệu busy, ready và data ở hai khối được nối trực tiếp với nhau. Code bên trong từng module là độc lập với nhau nên có thể tái sử dụng được. Một module khác muốn kết nối và trao đổi dữ liệu với producer thì phải hiểu giải tiếp của producer. Dữ liệu trao đổi giữa các module thực hiện ở mức tín hiệu, mức thấp.

 

Giao tiếp dựa trên các task, cách thực hiện này không thông qua port kết nối giữa hai module mà thông qua đường dẫn cụ thể của tín hiệu. Ví dụ, module producer kiểm tra function isbusy() trong module consumer thông qua đường dẫn top.consumer.isbusy() và thực thi task drive_data() thông qua đường dẫn top..consumer.drive_data(data). Đây là mô hình trao đổi dữ liệu ở mức cao hơn nhưng khó tái sử dụng do sử dụng đường dẫn cấu trúc để liên kết.

Với giao tiếp TLM, các nhược điểm của hai cách trên sẽ được hạn chế. Dữ liệu sẽ được trao đổi ở mức cao. Dữ liệu này là các transaction. Các transaction được tạo thành (mở rộng) từ lớp có sẵn, lớp uvm_sequence_item. Việc chuyển transaction giữa các thành phần thực hiện bằng cách “gọi” thành phần mở rộng trên và các method, là các task và function được hỗ trợ sẵn. Các method này không cố định đường dẫn theo cấu trúc (không phải chỉ định đường dẫn) nên có thể tái sử dụng dễ dàng.

 

3. Một số khái niệm cơ bản về TLM

 

producer: thành phần sinh ra transaction

consumer: thành phần sử dụng hay thực thi transaction

port: dùng để gọi các method hay yêu cầu một sự thực thi, TLM port định nghĩa một tập các method để sử dụng cho kết nối. Ký hiệu là hình vuông

export: định tuyến các giao tiếp đến các lớp khác nhau trong cấu trúc, TML export cung cấp sự thực thi các method. Ký hiệu là hình tròn

analysis port là giao tiếp phân phối các transaction đến các thành phần thụ động, được dùng để giám sát các transaction và giúp gỡ rối thiết kế. Ký hiệu là hình thoi

Nguồn:  icdesignvn
verificationacademy
http://www.testbench.in

Bạn Có Đam Mê Với Vi Mạch hay Nhúng      -     Bạn Muốn Trau Dồi Thêm Kĩ Năng

Mong Muốn Có Thêm Cơ Hội Trong Công Việc

    Và Trở Thành Một Người Có Giá Trị Hơn

Bạn Chưa Biết Phương Thức Nào Nhanh Chóng Để Đạt Được Chúng

Hãy Để Chúng Tôi Hỗ Trợ Cho Bạn. SEMICON  

 

Hotline: 0972.800.931 - 0938.838.404 (Mr Long)

 



 

Lần cập nhật cuối ( Thứ tư, 14 Tháng 8 2019 19:30 )  

Related Articles

Chat Zalo