1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu hìn thức đồng kiểm tra hệ thống sử dụng giao thức LIN local interconnect network

128 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên cứu hình thức đồng kiểm tra hệ thống sử dụng giao thức LIN (Local Interconnect Network)
Tác giả Nguyễn Khắc Thành
Người hướng dẫn TS. Nguyễn Đức Minh
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Kỹ thuật truyền thông
Thể loại Luận văn thạc sĩ
Năm xuất bản 2014
Thành phố Hà Nội
Định dạng
Số trang 128
Dung lượng 1,37 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bên cạnh đó, đồng kiểm đó, đồng kiểm thử hình thức hệ thống phần cứng/phần mềm thực hiện một giao thức Để vượt qua khoảng cách giữa kiểm tra phần cứng và phần mềm, một vào ITL để giảm kí

Trang 1

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

(LOCAL INTERCONNECT NETWORK)

Chuyên ngành: K ỹ thuật truyền thông

LU ẬN VĂN THẠC SĨ KỸ THUẬT

K Ỹ THUẬT TRUYỀN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC

TS NGUY ỄN ĐỨC MINH

Trang 2

LỜI CAM ĐOAN

Tôi tên: Nguyễn Khắc Thành

Lớp: KTTT-2011B

Đơn vị: Viện Điện tử - Viễn thông – Trường Đại học Bách khoa Hà Nội

Đề tài luận văn của tôi là: Nghiên cứu hình thức đồng kiểm tra hệ thống

sử dụng giao thức LIN (Local Interconnect Network).

Tôi xin cam đoan nội dung của luận văn hoàn toàn do tôi tự tìm hiểu

và nghiên cứu, không có sự sao chép bất cứ tài liệu nào, mọi tài liệu sử dụng

dựa trên cơ sở tham khảo để tìm hiểu thêm vấn đề

Nếu phát hiện ra bất cứ sự sao chép nào Tôi xin hoàn toàn chịu trách

nhiệm trước hội đồng kỷ luật của Nhà trường

Hà Nội, 30 tháng 03 năm 2014

Ký tên

Nguyễn Khắc Thành

Trang 3

L ỜI CẢM ƠN

Trước hết, em xin gửi lời cám ơn sâu sắc tới các thày cô giáo trong trường Đại học Bách Khoa Hà Nội nói chung và các thày cô trong Viện Điện Tử - Viễn

tình giúp đỡ, hướng dẫn em trong suốt quá trình thực hiện luận văn này

viên, chăm sóc, đóng góp ý kiến và giúp đỡ em trong quá trình học tập, nghiên cứu

và hoàn thành luân văn

Hà N ội, ngày 30 tháng 3 năm 2014 Nguy ễn Khắc Thành

Sinh viên l ớp KTTT2 – K2011B

Vi ện Điện Tử - Viễn Thông

Trường Đại học Bách Khoa Hà Nội

Trang 4

M ỤC LỤC

DANH M ỤC HÌNH VẼ

DANH M ỤC BẢNG

L ỜI CẢM ƠN

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 1

1.1 Đồng kiểm tra hình thức hệ thống phần cứng/phần mềm 1

1.1.1 Tổng quan về hệ thống phần cứng/phần mềm 1

1.1.1.1 Lý thuyết về hệ thống phần cứng/phần mềm 1

1.1.1.2 Luồng thiết kế hệ thống HW/SW 2

1.1.1.3 Kiến trúc hệ thống Hardware/Software 4

1.1.2 Tổng quan về các kỹ thuật kiểm tra hardware, software và các kỹ thuật đồng kiểm tra 4

1.1.2.1 Kiểm tra phần cứng: 5

1.1.2.2 Kiểm tra phần mềm 14

1.1.2.3 Hardware/Software Co-Verification 16

1.2 LIN Protocol và thực hiện của nó 22

1.2.1 Tổng quan về LIN Protocol 23

1.2.2 Đặc tả giao thức 24

1.2.2.1 Khung trong giao thức LIN 24

1.2.2.2 Cấu trúc khung 24

1.2.2.3 Khe khung 27

1.2.2.4 Lập lịch khung và truyền 27

1.2.3 Triển khai giao thức LIN 29

1.2.4 Trình điều khiển thiết bị LIN dựa trên máy trạng thái hữu hạn (Finite State Machine) 31

1.3 Chủ đề và đề cương của luận văn 34

CHƯƠNG 2: KIỂM TRA HÌNH THỨC CỦA MÔ HÌNH TRIỂN KHAI LIN C Ụ THỂ 37

2.1 Mô hình cụ thể của Node chủ LIN 38

Trang 5

2.1.2 Thành phần phần cứng của node chủ LIN 41

2.1.2.1 Aquarius 41

2.2 Kiểm thử hình thức của mô hình thực tế 47

2.2.1 Phân tách chương trình 47

2.2.4 Các mẫu tính chất dựa trên CFG dành cho mô hình cụ thể của node chủ LIN 61

2.3 Khuôn khổ kiểm tra mô hình cụ thể của Node chủ LIN 69

CHƯƠNG 3: KIỂM TRA HÌNH THỨC CỦA THỰC HIỆN LIN DỰA TRÊN PHƯƠNG PHÁP TRỪU TƯỢNG ITL 73

3.1 Từ tập hợp thuộc tính tới đồ thị thuộc tính 75

3.1.1 Đồ thị thuộc tính 76

3.1.2 Đồ thị thuộc tính của node chủ LIN 85

3.2 Từ biểu đồ thuộc tính đến mô hình máy hữu hạn trạng thái 88

3.2.1 Máy hữu hạn trạng thái 88

3.2.2 PFSM của node chủ LIN ( Node chủ LIN) 92

3.3 Từ PFSM đến mô hình trừu tượng 94

3.4 Kiểm tra hình thức của node chủ LIN với trừu tượng dựa trên ITL 95

3.4.1 Sự triển khai của node chủ LIN với trừu tượng dựa trên ITL 95

3.4.2 Kiểm tra chính thức của mô hình trừu tượng 97

3.4.3 Framework của đồng kiểm tra hình thức của triển khai LIN dựa vào những thuộc tính dài, chung 100

CHƯƠNG 4: KẾT QUẢ VÀ PHÂN TÍCH KẾT QUẢ THÍ NGHIỆM 102

4.1 Đồng kiểm tra hình thức cho mô hình cụ thể của node chủ LIN 102

4.2 Đồng kiểm tra hình thức node chủ LIN trừu tượng hóa dựa trên ITL 106

4.3 Kiểm thử chính thức của những thuộc tính dài và chung với node chủ LIN trừu tượng hóa dựa trên ITL 108

CHƯƠNG 5: KẾT LUẬN VÀ CÁC NGHIÊN CỨU SAU NÀY 114

5.1 Kết luận 114

5.2 So sánh với các nghiên cứu trước đây 115

5.3 Các nghiên cứu tiếp theo 116

ỆU THAM KHẢO

Trang 6

DANH M ỤC BẢNG

Bảng 1.1: Các kỹ thuật kiểm tra cho HW, SW, HW/SW 6

Bảng 4.1 Những công cụ trong kiểm thử mô hình cụ thể của node chủ LIN 103

Bảng 4.2 Những thuộc tính của Mô hình Cụ thể của node chủ LIN 104

Bảng 4.3 Tập thuộc tính của node chủ LIN được trừu tượng hóa dựa trên ITL 107

Bảng 4.4 Số biến trạng thái của mỗi mô đun 108

Bảng 4.5 Những thuộc tính dài, chung 112

DANH M ỤC HÌNH VẼ Hình 1.1 Luồng thiết kế hệ thống phần cứng/phần mềm 3

Hình 1.2 Sơ đồ khối hệ thống Hardware/Software 4

Hình 1.3 Kiểm tra hình thức 5

Hình 1.4: Mô hình mạch lặp của bộ mã hóa FSM cho BMC 8

Hình 1.5: Counterexample Guided Abstraction Refinement Framework 14

Hình 1.6: CEGAR kết hợp với trừu tượng xác nhận trong kiểm tra phần mềm 15

Hình 1.7: Mô hình đồng mô phỏng không đồng nhất 19

Hình 1.8: Một cụm LIN với 1 node master và 2 node slave 23

Hình 1.9: Kiến trúc layer của một node LIN 24

Hình.1.10: Giao tiếp điển hình trên bus LIN qua các khung 24

Hình 1.11: Cấu trúc khung 25

Hình.1.12 Cấu trúc của một trường byte 25

Hình 1.13: Trường ngắt đồng bộ 26

Hình 1.14: Trường đồng bộ 26

Hình.1.15: ID được bảo vệ 27

Hình 1.16: Tám byte dữ liệu trong một khung 27

Hình 1.17 Lịch trình LIN và khe khung 28

Hình 1.18: Một ví dụ về chuyển giao khung 28

Hình 1.19: Các lớp trong triển khai phần mềm của LIN 30

Trang 7

Hình 1.20 Máy trạng thái hữu hạn của trình điều khiển thiết bị LIN 33

Hình 2.1: Sơ đồ khối của node chủ LIN 40

Hình 2.2: Sơ đồ RTL của Aquarius 41

Hình 2.3: Sơ đồ khối của core CPU Aquarius 42

Hình 2.3 Sơ đồ RTL của bộ nhớ 43

Hình 2.5: Ánh xạ địa chỉ của RAM và ROM trên Aquarius 45

Hình 2.6: Sơ đồ RTL của UART 45

Hình 2.7 Sơ đồ RTL của IRQCTL 46

Hình 2.8: Quá trình từ chương trình C đến chương trình disassembly 49

Hình 2.9: Chương trình C 52

Hình 2.10: Chương trình assembly của chương trình C 52

Hình 2.11: CFG của chương trình tách rời của chương trình C đơn giản 55

Hình 2.12: Tính chất giả 71

Hình 2.13: Tính chất thật 58

Hình 2.14: Một phần của hàm chính của trình điều khiển thiết bị LIN 61

Hình 2.15: Chương trình tách rời của LIN trình điều khiển thiết bị 61

Hình 2.16 CFG của node chủ LIN được hình thành dựa trên CFG 63

Hình 2.17: Một mẫu tính chất của node chủ LIN 66

Hình 2.18: Chia một chuyển đổi dài thành 4 chuyển đổi ngắn 68

Hình 2.19: Khuôn khổ đồng kiểm tra hình thức mô hình cụ thể của node chủ LIN 71

Hình 3.1 Thuộc tính start_new_frame 78

Hình 3.2.Bộ phận của CEG cho thuộc tính khung mới khởi động 79

Hình 3.3 Macro ITL cpu_at_Label26_In _main_sh 80

Hình 3.4 Một đỉnh trong CEG ánh xạ hai node trên biểu đồ thuộc tính 81

Hình 3.5.Thuộc tính reset của node chủ LIN 82

Hình 3.6.Xây dựng đồ thị thuộc tính từ tập hợp thuộc tính 84

Hình 3.7 Đồ thị thuộc tính của node chủ LIN 87

Hình 3.8 Từ đồ thị thuộc tính đến mô FSM thuộc tính 89

ư 93

Trang 8

Hình 3.10 Sơ đồ khối của mô hình trừu tượng 94

Hình 3.11 Sơ đồ RTL của mô hình trừu tượng 95

Hình 3.12 Node chủ LIN qua mô hình trừu tượng 96

Hình 3.13 Một thuộc tính cụ thể đến một thuộc tính trừu tượng 99

Hình 3.14 Framework cho đồng kiểm tra hình thức của node chủ LIN dựa trên những thuộc tính dài, chung 101

Hình 4.1 Biểu diễn sơ đồ mạch của mô hình mạch tương tác thỏa mãn chiều dài n của thuộc tính 105

Hình 4.2 Một nhóm LIN 109

Hình 4.3 Một ví dụ của thuộc tính dài, chung trong node chủ LIN 110

Hình 4.4 Mẫu thuộc tính cho thuộc tính chung, dài 111

Trang 9

L ỜI MỞ ĐẦU

năng trong ngành công nghiệp kiểm thử System-on-Chip Bên cạnh đó, đồng kiểm

đó, đồng kiểm thử hình thức hệ thống phần cứng/phần mềm thực hiện một giao thức

Để vượt qua khoảng cách giữa kiểm tra phần cứng và phần mềm, một

vào ITL để giảm kích thước của node chủ LIN Phương pháp lý thuyết của chúng tôi đã được áp dụng thành công để xác minh một thuộc tính chung đối với node chủ

năng của một bộ kiểm tra thuộc tính chính thức tiên tiến, do đó chúng tôi đề xuất

Trang 10

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN

1.1 Đồng kiểm tra hình thức hệ thống phần cứng/phần mềm

1.1.1 T ổng quan về hệ thống phần cứng/phần mềm

1.1.1.1 Lý thuy ết về hệ thống phần cứng/phần mềm

ứng dụng khác nhau Trong danh mục của hệ thống phần cứng / phần mềm, thông thường chúng ta có máy tính mục đích chung và hệ thống nhúng Máy tính thông thường, chẳng hạn như máy tính cá nhân, thực hiện nhiều nhiệm vụ khác nhau tùy

lượng tốt hơn so với một hệ thống hoàn toàn thực hiện trong phần mềm Tuy nhiên

Trang 11

lượng và độ tin cậy cao, chi phí và nhu cầu bảo trì thấp, và thời gian đưa ra thị trường ngắn Trong luận văn này, hệ thống HW / SW của chúng tôi là một hệ thống

điện tử ô tô

1.1.1.2 Lu ồng thiết kế hệ thống HW/SW

Để hiểu rõ hệ thống HW / SW hơn, luồng thiết kế được giới thiệu đầu tiên trước khi

được gọi là đồng thiết kế hệ thống phần cứng/phần mềm, là một nhiệm vụ thách

• Mô hình hệ thống: đặc điểm kỹ thuật và các điều kiện ràng buộc hệ thống được phân tích để cung cấp một mô hình cấp hệ thống của thiết kế Hệ thống tại cấp

độ này là mô hình kết nối các khối chức năng giao tiếp với nhau bằng các bản tin

được sử dụng để mô hình hình thức hệ thống Đối với mục đích mô phỏng,

đó SW sẽ được nạp vào thiết bị lập trình được giống như các tập tin đối tượng

• Thiết kế phần cứng: Bước này bao gồm mô hình hóa HDL và phân vùng

điển hình là VHDL hoặc Verilog VDL

Trang 12

hình bus, giao thức bus và driver thiết bị Driver thiết bị để ẩn các thành phần HW

SW Compilation

Behavioral Synthesis and IP resuse

Object code

RT-level design

Logic Synthesis

Gate-level design

Hardware/Software System

Hình 1.1 Luồng thiết kế hệ thống phần cứng/phần mềm

Trang 13

Hình 1.2 Sơ đồ khối hệ thống Hardware/Software

• Thiết bị lập trình được: Thiết bị lập trình được sẽ thực hiện SW được lưu

• Mô hình bộ nhớ Bộ nhớ bao gồm hai phần: SW và điều khiển thiết bị

• Kiến trúc truyền thông HW / SW và giao thức bus Thông tin liên lạc giữa

1.1.2 T ổng quan về các kỹ thuật kiểm tra hardware, software và các kỹ thuật đồng kiểm tra

Trang 14

của nó Một mô hình hình thức là một mô hình trừu tượng của việc thực thi Các phương pháp hình thức thể hiện quy tắc chính xác để chứng minh rằng các hành vi

Abstraction Refinement Framework

Trang 15

?

1.1.2.1.1 Simulation và Emulation

trước khi xây dựng nguyên mẫu thiết kế bằng cách sử dụng chương trình logic, vd FPGA

ế nếu chúng ta cho phép nhiều trường hợp không được check Như vậy, simulation

Trang 16

và emulation được phân loại vào nhóm các phương pháp không chính thức Tuy

1.1.2.1.2 Ki ểm tra mô hình và kiểm tra mô hình tượng trưng

được sử dụng phổ biến nhất trong thương mại

hình hóa như một finite state machine (FSM) Trong kiểm tra mô hình, FSM được

mô hình Kripke tăng theo cấp số mũ theo số trạng thái có thể của các thiết kế Theo

đó, nó giới hạn dung lượng của các bộ kiểm tra mô hình và các bộ kiểm tra mô hình

Checking) Phương pháp này sử dụng Binary Decision Diagrams (BDDs) để thao tác tượng trưng các nhóm trạng thái và quan hệ chuyển tiếp mà không phải liệt kê rõ

Tuy nhiên, kích thước của BDD có thể tăng theo cấp số mũ theo số mức kết hợp

được yêu cầu để lưu trữ và sử dụng BDD Theo đó, kiểm tra mô hình tượng trưng

Trang 17

1.1.2.1.3 Ki ểm tra mô hình giới hạn (BMC) và chứng minh quy nạp

đó được trải ra (unroll) k khung thời gian, kết quả tạo ra một mô hình mạch lặp

năng chuyển đổi và chức năng đầu ra Mô hình mạch lặp phục vụ như là mô hình

mã hóa FSM M

Hình 1.4: Mô hình mạch lặp của bộ mã hóa FSM cho BMC

1 1

0

j k M

Trang 18

Tính chất trong BMC được xây dựng trong Linear Temporal Logic (LTL) Để

Hơn nữa, BMC kiểm tra mô hình từ các trạng thái ban đầu, do đó là cần thiết

để liên kết các đường dẫn bắt đầu từ trạng thái ban đầu Liên kết này được biểu

Định nghĩa 1.1 Chúng ta sử dụng công thức Boolean, ký hiệu BMC(M, p, k) kiểm

1

1 0

= −

=

Đẳng thức 1.2 là thể hiện SAT cho BMC được thông qua bộ giải SAT Khi

đường trong FSM để thực hiện tính chất đảo Khi không có phép gán đáp ứng nào được tìm thấy, có nghĩa là tính chất giữ cho k khung thời gian bắt đầu từ trạng thái

Phương trình 1.2 kiểm tra tính chất p so với thiết kế cho đến k khung thời

được tìm thấy hoặc k lần đạt độ sâu tuần tự của thiết kế hoặc BMC hết các nguồn tài

do đó nó thường là không rõ ràng Hơn nữa, độ sâu tuần tự của thiết kế công nghiệp

là thường đủ lớn để BMC thường không chứng minh được tính chất vì sự phức tạp

Trang 19

Chứng minh quy nạp [9] giải quyết vấn đề không đầy đủ của BMC Chứng

1.1.2.1.4 M ột cách tiếp cận Interval Property Checking (IPC) và IPC bất biến

tương tự như BMC ngoại trừ IPC không bắt đầu kiểm tra các thiết kế từ trạng thái đầu Nó giả định rằng mô hình trải ra bắt đầu với một số trạng thái tùy ý và sau đó

được mô tả trong công thức CLT hoặc LTL Tuy nhiên, tính chất đó thường dẫn đến

như sau:

1

1 0

đạt đường kính thiết kế Tuy nhiên trong hầu hết các trường hợp của thiết kế công

quá dung lượng của bộ giải SAT

Để giảm sự phức tạp của BMC, chúng tôi cho rằng bộ kiểm tra tính chất bắt đầu kiểm tra từ một số trạng thái tùy ý chứ không phải bắt đầu từ trạng thái ban đầu,

Trang 20

tức là nó giả định mô hình trải ra bắt đầu với một số trạng thái tùy ý và sau đó bắt đầu kiểm tra tính chất

Do đó, chúng ta có thể thay thế các liên kết cho các trạng thái ban đầu trong đăng thức 1.3 bởi một bất biến và chúng ta cần khảo sát chỉ một thể hiện SAT đơn

1

1

j t n t

quan đến k trong BMC nữa, tức là để có được một bằng chứng đầy đủ, thủ tục này

Định nghĩa 1.2 (Interval Property Checking): Interval Property Checking

Liên quan đến BMC, IPC đã được chứng minh rất hiệu quả cho một loạt các

không đủ, một số trạng thái bắt đầu có thể không thể đạt tới Và các trạng thái

được gọi là phản ví dụ giả

trường hợp, cách chọn này có thể là đủ vì mô hình mạch lặp có chứa nhiều thông tin

Trang 21

cục bộ, tuy nhiên, trong vài trường hợp đặc biệt như các tác vụ truyền thông, I(Vt) =

1 là không đủ Để giảm bớt hoặc tránh khả năng thu được các phản ví dụ giả trong phương pháp dựa trên IPC, bất biến có thể đạt tới được sử dụng để loại bỏ các trạng

tính toán được giảm mạnh Phân tích TBT tiết kiệm hầu hết công việc thủ công tẻ

năng lực của bộ kiểm tra IPC tiên tiến nhất là bị hạn chế bởi tính chất và độ phức

1.1.2.1.5 Counterexample Guided Abstraction Refinement Framework (CEGAR)

ừu tượng hóa, chúng ta gọi là hệ thống cũ "mô hình cụ thể" và hệ thống mới

Trang 22

sau khi trừu tượng "mô hình trừu tượng" Thay vì sử dụng hệ thống cũ, cụ thể, tính

thường là quá đắt [11], do đó mô hình trừu tượng là trừu tượng xấp xỉ từ các mô

cụ thể:

được xây dựng từ tập hợp các biến có thể nhìn thấy, kết quả là một sự trừu tượng

tượng

Thông thường, các mô hình trừu tượng gần đúng phải được bảo toàn và gần đúng dương với mô hình cụ thể của thiết kế Điều này cho thấy nếu tính chất nắm

Trang 23

phải được xử lý Các trường hợp khác là các phản ví dụ tạo ra không thể được mô

nghĩa là những hành vi được mô tả trong phản ví dụ là sai cho các mô hình cụ thể

tượng xấp xỉ dương Do đó, một số hạn chế cần được bổ sung vào mô hình trừu tượng để tinh chỉnh các hành vi được mô tả trong mô hình trừu tượng Bước này được gọi là sàng lọc Sau đó, các tính chất sẽ được kiểm tra đối với mô hình trừu tượng mới này Vòng lặp này sẽ kết thúc cho đến khi tính chất nắm giữ hoặc một lỗi

(CEGAR) [2, 3, 11] (Hình 1.5)

Property holds Design errors

Concrete Model

Counterexample Guided Abstraction Refinement

Verify Property on Abstract Model Abstract Model

Check Counterexamp

le on concrete model

Trang 24

hiệu quả của mô hình kiểm tra của hệ thống SW đã bị hạn chế bởi vấn đề bùng nổ

Trang 25

trình của các đối tượng truyền thông có thể thực hiện trong tương lai" [7] Từ thuật

1.1.2.3 Hardware/Software Co-Verification

được lưu trữ trong bộ nhớ của máy tính, như các khối phần mềm trong hệ thống

nơi mà các driver thường được đặt, trình điều khiển truy cập vào thiết bị và thiết bị làm gián đoạn chương trình Tính chính xác duy nhất của chỉ máy tính hoặc máy in

Do đó, kiểm tra hệ thống HW / SW có thể được chia thành hai loại có nhiệm

• Kiểm tra tính toán

• Kiểm tra giao tiếp

Trang 26

của các mạch số nội bộ của máy in là một tác vụ kiểm tra tính toán, đó hiển nhiên là

phương pháp kiểm tra cho HW hay SW để xác minh các thành phần riêng biệt Một

tương đối thấp Những hành vi giao tiếp giữa các khối trong hệ thống HW / SW được gọi là hành vi mức hệ thống

1.1.2.3.1 Các ph ương pháp không chính thức

thông thường để thích nghi với hệ thống HW / SW

thường có thể được áp dụng để kiểm tra toàn bộ hệ thống trước khi phân vùng HW /

Trang 27

dụng để kiểm tra toàn bộ hệ thống HW / SW dù trước hoặc sau khi phân vùng HW /

SW

Môi trường không đồng nhất cho phép chúng ta sử dụng một mức độ trừu tượng thấp hơn so với mức độ hành vi cho HW VHDL hoặc Verilog có lẽ là mức

Trang 28

nhất và tốc độ mô phỏng nhanh hơn so với phương pháp tiếp cận không đồng nhất

Communication Interface

Communication Interface

Co-Simulation Bus

Hình 1.7: Mô hình đồng mô phỏng không đồng nhất

mong đợi Tuy nhiên, một đồng mô phỏng toàn diện thường là không thể Nó là vì hai

1.1.2.3.2 Các phương pháp hình thức

đề xuất để chứng minh hình thức sự tuân thủ giao thức cho các khối giao tiếp trong

đã được chứng minh thành công trong nhiều thiết kế công nghiệp Tuy nhiên đồng

Trang 29

xác minh hình thức của hệ thống HW / SW là khác với xác minh SoC vì một trong

• Bản chất không đồng nhất nội tại của hệ thống HW / SW Thông thường,

dàng

• Phức tạp lớn gây ra bởi các khoảng thời gian dài của các thuộc tính của hệ

hơn so với các thuộc tính của mô-đun HW hoặc SW riêng biệt Đầu tiên, phần mềm

Trang 30

Kể từ khi đồng kiểm tra hình thức của hệ thống HW / SW gặp phải những khó khăn nêu trên, phương pháp kiểm tra thông thường cho HW hay SW không còn

định một ngữ nghĩa sạch cho UML hoặc cung cấp sinh mã tự động đối với ngôn

như sửa chữa điểm số học Bên cạnh đó, SystemC nắm giữ ở mức cao hơn của trừu tượng hóa trên RTL, bao gồm các bộ phận được thực hiện như phần mềm đồng

thời

Đồng xác minh hình thức của hệ thống HW / SW trong SystemC được thực

động để đồng bộ hóa

Trang 31

2 Tự động phân vùng thiết kế vào từng phần của phần cứng và phần mềm Điều này dẫn đến một mô hình phân vùng trừu tượng

phương pháp tiếp cận trừu tượng xác nhận dựa trên SAT, trong đó sử dụng một chương trình trừu tượng làm mịn hướng dẫn phản ví dụ đầy đủ

đối mặt với hệ thống HW/ SW , nơi phần mềm được viết bằng ngôn ngữ lập trình như C hoặc C++ và phần cứng được mã hoá trong một ngôn ngữ mô tả phần cứng như Verilog HDL hay VHDL Vì vậy, câu hỏi là sự lựa chọn của chúng ta cho đồng

SW

1.2 LIN Protocol và th ực hiện của nó

ảy 1999 LIN là một hệ thống giao tiếp nối tiếp chi phí cạnh tranh được thiết

Trang 32

kế cho các mạng xe điện nội bộ, bổ sung cho mạng lưới ô tô phức tạp hiện tại,

lượng cao hơn và giảm chi phí hơn

1.2.1 T ổng quan về LIN Protocol

trên bus LIN

Interface (SCI)

Hình 1.8: Một cụm LIN với 1 node master và 2 node slave [5]

Trang 33

Nhiệm vụ chủ quyết định khi nào và khung được chuyển trên bus Nhiệm vụ

Hình 1.9: Kiến trúc layer của một node LIN

đó là cầu nối lớp ứng dụng của người sử dụng và bus vật lý Frame handler dữ liệu

1.2.2 Đặc tả giao thức

1.2.2.1 Khung trong giao th ức LIN

hướng tới nhiệm vụ lệ thuộc mà cả node chủ và node lệ thuộc có Header được phát

Hình.1.10: Giao tiếp điển hình trên bus LIN qua các khung

1.2.2.2 C ấu trúc khung

Như đã trình bày trong hình 1.11, một khung LIN được tạo nên bởi một

Trang 34

header khung và một phản hồi khung Header khung luôn được gửi bởi node chủ và

được nhận có chủ đích bởi mọi node trên bus LIN, còn phản hồi khung có thể được

chủ đích

Hình 1.11: Cấu trúc khung

nghĩa là không có gì diễn ra trên bus, đường dây đơn có giá trị lặn "1" Để bắt

được phần đầu của dữ liệu trên bus LIN, một bit khởi đầu của giá trị trội "0" cần

Hình.1.12 Cấu trúc của một trường byte

Đồng bộ hóa các node LIN lệ thuộc Mọi khung đều bắt đầu với việc

Trang 35

truyền header khung Sau khi một node trên bus LIN phát hiện ra sự xuất hiện của

 Synch Break (Ngắt đồng bộ) Được dùng để báo hiệu phần đầu của một

Hình 1.13: Trường ngắt đồng bộ

sau đó là các bit còn lại và cuối cùng là Bit giá trị cao nhất (MSB)

Hình 1.14: Trường đồng bộ

là ID được bảo vệ 60 ID đầu tiên luôn sẵn có để truyền dữ liệu một cách hữu dụng

Trang 36

Hình.1.15: ID được bảo vệ

 Dữ liệu Một khung có thể chứa từ một đến 8 byte dữ liệu Số byte cho

Thêm vào đó, số byte sẽ được thống nhất bởi bộ phát và tất cả các thuê bao (bộ

nhận)

Hình 1.16: Tám byte dữ liệu trong một khung

 Checksum Checksum sẽ có sau khi hoàn tất việc truyền một trường dữ

1.2.2.3 Khe khung

1.2.2.4 L ập lịch khung và truyền

Trang 37

Sau khi tất cả các truyền dẫn trên một nhóm LIN được khởi phát bởi tác vụ

Hình 1.17 Lịch trình LIN và khe khung

M ột ví dụ về việc chuyển giao khung được thể hiện dưới đây:

ID=0x30

ID=0x31 ID=0x31

ID=0x32 ID=0x32

Khi đến lượt msg 0x30 , master sẽ phát ra header

có ID=0x30 Msg 0x30 là m ột yêu cầu từ master đến slave1, và sau đó slave1 phản hồi đến master

Khi đến lượt msg 0x31 , master sẽ phát ra header có ID=0x31 Msg 0x32 là m ột yêu cầu từ slave1 đến slave2, và sau đó master phản hồi đến slave1 và

Khi đến lượt msg 0x32 , master sẽ phát ra header

có ID=0x32 Msg 0x32 là m ột yêu cầu từ slave2 đến slave1, và sau đó slave2 phản hồi đến slave1

Trang 38

1.2.3 Tri ển khai giao thức LIN

Trong phương pháp triển khai dựa trên AISC (Mạch tích hợp chuyên dụng),

là đến gate-level netlist Sau đó, nó được chuyển đi để tạo ra một ASIC Trong một phương thức triển khai dựa trên ASIP (Bộ xử lý tập lệnh chuyên dụng), một bộ xử

lý đặc biệt sẽ được tạo để chạy giao thức Bộ xử lý này là hướng tới ứng dụng do có

C++, sau đó giao thức này sẽ chạy trên kiến trúc vi điều khiển

LIN_driver.c, and LIN_InitNode.h

Trang 39

ASC_TRANSMIT _BUFFER

TX/RX IRQ_RX_EN

IRQ_TX_EN

UARTBG0 UARTBG1

ASC_BAURATE0_REG ASC_BAURATE1_REG

main.c

LIN_InitNode.h LIN_driver.h LIN_driver.c

common.c

RX_IRQ

Hình 1.19: Các lớp trong triển khai phần mềm của LIN

Main.c là chương trình ứng dụng, nơi mà kỹ sư ứng dụng định nghĩa các byte

user_rx_data / user_tx_data và stLinTransceiveBuffer

Trang 40

Common.h có một struct trong ngôn ngữ lập trình C, có cùng nội dung như

1.2.4 Trình điều khiển thiết bị LIN dựa trên máy trạng thái hữu hạn (Finite State Machine)

trên bus LIN, bus này đã được lên lịch để truyền Header khung bao gồm ba phần:

độ dài của từng phần là 1 byte Trong quá trình truyền header khung, node chủ

header đã hoàn thành truyền và đã nhận được từ bus Sau khi hoàn thành truyền

đầu phản hồi tới header bằng cách đưa dữ liệu khung và checksum lên bus LIN

Sau đó, lịch trình của node chủ sẽ sắp xếp khung tiếp theo trong khe khung sắp tới

thành cho đến khi tất cả các byte dữ liệu và checksum được nhận bởi note chủ

điều kiện truyền dẫn FSM mà node chủ tuân theo có thể được sinh ra từ trình điều

Ngày đăng: 26/04/2021, 10:59

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] E.Clarke, O. Grumberg, S.Jha, Y.Lu, and H. Veith, “counterexample guided abstraction refinement,” in Computer Aided Verification (CAV’00).Springer, 2000, pp. 154-169, LNCS 1855 Sách, tạp chí
Tiêu đề: counterexample guided abstraction refinement
[3] E. Clarke, Daniel Kroening, Natasha Sharygina, Karen Yorav, “Predicate Abstraction of ANSI-C Programs Using SAT”, Formal Methods in System Dseign, 25, 105-127, 2004 Sách, tạp chí
Tiêu đề: Predicate Abstraction of ANSI-C Programs Using SAT
[4] Daneil Kroening, Natasha Sharygina, “Formal Verification of SystemC by Automatic Hardware/Software Partitioning”, 0-7803-9227-2/05, 2005 IEEE [5] LIN Specification Package, Revision 2.1, LIN Consortium, 2006 Sách, tạp chí
Tiêu đề: Formal Verification of SystemC by Automatic Hardware/Software Partitioning
[7] Cormac Flanagan and Patrice Godefroid, “Dynamic Partial-Order Reduction for Model Checking Software”, POPL’05, January 12-14, 2005 [8] A.Biere, A.Cimatti, E.Clarke and Y.Zhu, “Symbolic Model CheckingWithout BDDs”, Proc. Intl. Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), 1999 Sách, tạp chí
Tiêu đề: Dynamic Partial-Order Reduction for Model Checking Software”, POPL’05, January 12-14, 2005 [8] A.Biere, A.Cimatti, E.Clarke and Y.Zhu, “Symbolic Model Checking Without BDDs
[9] M.Sheeran, S.Singh, G.Stalmarck, “Checking Safety Properties Using Induction And A SAT-Solver”, Proc. Intl. Conference on Formal Methods in Computer-Aided Design (FMCAD), 2000 Sách, tạp chí
Tiêu đề: Checking Safety Properties Using Induction And A SAT-Solver
[10] Minh D. Nguyen, Max Thalmaier, Markus Wedler, Jửrg Bormann, Dominik Stoffel, Wolfgang Kunz, “Unbounded Protocol Compliance Verification Using Interval Property Checking With Invariants”, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 27, NO. 11, Nov. 2008 Sách, tạp chí
Tiêu đề: Unbounded Protocol Compliance Verification Using Interval Property Checking With Invariants

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w