Tiểu luận Xây dựng các hệ thống nhúng PTIT

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

BỘ THÔNG TIN VÀ TRUYỀN THÔNG

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

TIỂU LUẬN
XÂY DỰNG CÁC HỆ THỐNG NHÚNG
Đề tài :
Specification and Design of Embedded Hardware and Software systems
Đặc điểm kỹ thuật và thiết kế của hệ thống phần cứng và phần mềm nhúng

Giảng viên: Thầy Huỳnh Thúc Cước


Nhóm môn học: 04
Nhóm bài tập: 11
Sinh viên thực hiện:

HÀ NỘI – 30/6/2021
Nội dung

A. Khái quát chung................................................................................................

B. Đặc điểm kỹ thuật và thiết kế của phần cứng-phần mềm hệ nhúng.................

1. Nắm bắt thông số kỹ thuật..........................................................................

2. Tìm hiểu......................................................................................................

3. Tinh chỉnh đặc điểm kỹ thuật.....................................................................

4. Tổ hợp phần mềm.......................................................................................

5. Tổ hợp phần cứng.......................................................................................

6. Giả lập và đồng giả lập..............................................................................

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

A. Khái quát chung:

Hệ thống nhúng (tiếng Anh embedded system) là một thuật ngữ để chỉ một hệ thống
có khả năng tự trị được nhúng vào trong một môi trường hay một hệ thống mẹ. Đó là
các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bài toán chuyên dụng
trong nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quan trắc và truyền tin.
Hệ thống nhúng trở nên phổ biến trong những năm gần đây. Ví dụ bao gồm kiểm soát
hành trình tự động, hệ thống phun nhiên liệu, lái máy bay tự động, sản phẩm viễn
thông, bộ xử lý truyền hình tương tác, thiết bị chuyển mạch mạng, bộ lấy nét video, bộ
điều khiển robot và nhiều thiết bị y tế.

InXử lý TV tương tác


Audio_in Audio_out
Video_in
Hệ thống tương tự Video_out Hệ thống con
Av_cmd tương tự
Hệ thống con kỹ thuật số

Audio+ AudioVideo
Video commands
'"" Keypad
receiver
IC

Bo mạch máy tính I I C


hệ thống bộ xử lý TV tương tác (ITVP) cho cổng sup của đa phương tiện tương tác.
I

B. Đặc điểm kỹ thuật và thiết kế của phần cứng-phần mềm hệ


nhúng:

1. Nắm bắt thông số kỹ thuật.


2. Tìm hiểu
3. Tinh chỉnh đặc điểm kỹ thuật
4. Thiết kế phần mềm và phần cứng
5. Thiết kế vật lý
1. Nắm bắt thông số kỹ thuật

Bao gồm ba nhiệm vụ con: tạo mô hình, tạo mô tả và mô phỏng.

1.1 Tạo mô hình


Để chỉ định chức năng của hệ thống, trước tiên chúng ta phả phân rã chức năng đó và
hủy ghi lại mối quan hệ giữa các mảnh. Ví dụ: chúng ta đã phân hủy chức năng của
ITVP thành các chức năng như lưu trữ video, lưu trữ âm thanh, tạo video và tạo âm
thanh.

Có nhiều mô hình để mô tả chức năng của hệ thống.


+ Một là biểu đồ luồng dữ liệu.
+ Hai là máy trạng thái hữu hạn (FSM),
+ Ba là truyền đạt các quy trình tuần tự (CSP)
+ Thứ tư, máy trạng thái chương trình (PSM),

Không có mô hình nào là lý tưởng cho tất cả các lớp hệ thống. Mô hình FSM có thể
phù hợp nhất cho một hệ thống không thực hiện tính toán phức tạp nhưng phải đáp
ứng với các chuỗi phức tạp của các sự kiện bên ngoài. Mô hình CSP phù hợp nhất cho
các hệ thống thực hiện chuyển đổi dữ liệu phức tạp. Mô hình PSM theo nhiều cách
phụ thuộc vào các mô hình FSM và CSP, vì vậy nó phù hợp không chỉ cho các hệ
thống thống trị kiểm soát mà còn cho các hệ thống thống trị dữ liệu như các ứng dụng
phần mềm mềm.

1.2 Tạo mô tả
Việc lựa chọn một mô hình là yếu tố quan trọng nhất ảnh hưởng đến khả năng hiểu
và xác định chức năng hệ thống trong quá trình đặc tả. Khi chúng ta đã chọn mô hình
thích hợp, chức năng hệ thống phải được nắm bắt trong một đặc tả chức năng. Một
đặc điểm kỹ thuật như vậy có thể được nắm bắt bằng nhiều ngôn ngữ khác nhau. Một
đặc tả chức năng dễ dàng tạo ra nếu có sự tương ứng 1-1 giữa các đặc điểm của mô
hình và cấu trúc ngôn ngữ. Nếu một ngôn ngữ cấu trúc không tồn tại cho một đặc tính
cụ thể, khi đó chúng ta phải áp dụng một số nỗ lực để sử dụng một tập hợp cấu trúc
mô tả đặc điểm đó, do đó dẫn đến mô tả ít dễ đọc hơn, có thể có nhiều lỗi chức năng
hơn.

  Đặc điểm hệ thống nhúng

Trạng thái Hành vi Chương trình Hành vi


hoàn thành
Ngôn ngữ Chuyển tiếp Cấp bậc Đồng thời Cấu trúc Ngoại lệ

N p s s
s
VHDL
N s s s N s
Verilog Hardware( CSP s
N p s s s
s
Statecharts SDL
N s s s N
N
Silage Esterel N
s s s N s
SpecCharts
s
s p s N N/A
N
N/A N/A s N/A s
N/A
s
N s s s
s
s s s s s

2. Tìm hiểu cụ thể


Với đặc điểm kỹ thuật chức năng của một hệ thống, nhà thiết kế phải tạo ra một thiết
kế cấp hệ thống của các thành phần được kết nối với nhau, mỗi thành phần thực hiện
Một phần của đặc điểm kỹ thuật đó. Khả năng chấp nhận của thiết kế phụ thuộc vào
mức độ thỏa mãn ràng buộc về số liệu thiết kế như hiệu suất, kích thước, công suất và
chi phí. Đánh giá thời gian và công sức thiết kế thời gian và nỗ lưc đáng kể.
Bằng cách sử dụng một thông số kỹ thuật chính thức, chúng ta có thể tự động khám
phá nhanh chóng số lượng lớn các thiết kế tiềm năng. Việc khám phá liên quan đến
bốn bài toán con phụ thuộc lẫn nhau: phân bổ, phân vùng, chuyển đổi và ước lượng.

2.1 Cấp phát


Là vấn đề tìm kiếm tập hợp các thành phần hệ thống để thực hiện các chức năng của
hệ thống.
Chúng bao gồm sự đa dạng của bộ vi xử lý, bộ vi điều khiển, FPGA, bộ xử lý song
song và bộ xử lý bộ hướng dẫn ứng dụng cụ thể đang phát triển mới Ngoài ra, hàng
trăm thành phần được thiết kế trước thực hiện một chức năng cụ thể có sẵn…. Chúng
ta có thể mô tả đặc điểm của các thành phần bằng các tập cấu trúc, các khối mô tả
được tham số hóa, hoặc số lượng các đối tượng phần cứng. Các bộ xử lý mục đích
chung được phân loại bởi các tập lệnh. Bất kỳ phần nào của một thông số kỹ thuật
được thực hiện với một vi xử lý phải được chuyển đổi thành một chuỗi hướng dẫn.
Nhiều mục đích đặc biệt của com, chẳng hạn như đa số dấu phẩy động, phép biến đổi
Fourier và bộ điều khiển OMA.

2.2 Phân vùng


- Phân vùng cấu trúc, hệ thống được triển khai lần đầu tiên với các chốt cấu trúc chi
tiết mới, chẳng hạn như cổng, và các điểm nối ob đó sau đó được phân vùng giữa một
số thành phần tùy chỉnh. Mặc dù dễ dàng tự động hóa, nhưng cách tiếp cận này không
không xem xét việc triển khai phần mềm

- Phân vùng chức năng, các chức năng hệ thống khác nhau trước tiên được phân
vùng thành các nhóm chức năng, trong đó mỗi nhóm được gán cho một thành phần hệ
thống. Mỗi nhóm sau đó được triển khai dưới dạng phần mềm (cho một thành phần bộ
xử lý) hoặc dưới dạng phần cứng (đối với thành phần ASIC).

Khi phát triển một kỹ thuật phân vùng chức năng, chúng ta phải xem xét một số vấn
đề
- Chúng ta phải xác định mức độ chi tiết của đối tượng

- Chúng ta phải chọn các chỉ số thiết kế sẽ được sử dụng để tạo ra một phân vùng tốt

- Chúng ta phải chọn các chỉ số thiết kế sẽ được sử dụng để tạo ra một phân vùng tốt

- Dùng một đối tượng chức năng

- Chúng ta cần các thuật toán phân vùng

2.3. Chuyển đổi

Thủ tục nội tuyến và quy trình hợp nhất là những ví dụ phổ biến về các phép biến đổi
hư cấu cụ thể.
Một chuyển đổi tổ chức lại đặc tả cụ thể, do đó thay đổi tổ chức của bất kỳ hành động
tiếp. Các biến đổi khác bao gồm tham gia hệ thống phân cấp, quy trình chia tách,
nhóm câu lệnh thành thủ tục và hợp nhất các biến thành mảng.

2.4 Ước tính

Chúng ta mô tả các phương pháp ước tính các chỉ số phổ biến về kích thước phần
cứng, kích thước phần mềm và hiệu suất. Như chúng ta sẽ thấy, kích thước phần mềm,
phần cứng và các kỹ thuật ước tính hiệu suất không hoàn toàn chính xác vì ánh xạ mô
tả hành vi vào phần cứng hoặc phần mềm không đơn giản (1-1). Sự phức tạp được
giới thiệu bằng cách tối ưu hóa trên sự trừu tượng khác nhau các cấp độ. Kích thước
phần cứng của một tập hợp các chức năng nhất định có thể được ước tính bằng cách
tổng hợp gần như một bộ điều khiển và đường dẫn dữ liệu để triển khai các chức năng
đó, để dự đoán giảm mã hoặc nâng cao hiệu suất do tối ưu hóa
Kích thước phần mềm của một nhóm chức năng nhất định có thể được ước tính bằng
cách biên dịch các chức năng thành tập lệnh của một bộ xử lý nhất định.
Nói chung, chỉ những ước tính sơ bộ là cần thiết trong quá trình thiết kế hệ thống.

3. Tinh chỉnh đặc điểm kỹ thuật


Kết hợp phong cách triển khai và chi tiết mà chúng ta đã chọn. Để tạo mô tả cấp hệ
thống, trước tiên phải thêm một số chi tiết vào chức năng, bao gồm các chi tiết liên
quan đến ký ức, giao diện và tùy chọn:

3.1 Bộ nhớ

Trong giai đoạn nghiên cứu thiết kế hệ thống, chúng ta có thể đã nhóm các biến để
lưu trữ trong một bộ nhớ cụ thể. Mỗi quá trình không còn có thể truy cập trực tiếp các
biến này nữa.

3.2 Giao diện.


Chức năng phân vùng giữa các thành phần hệ thống thường đưa ra nhu cầu giao tiếp
dữ liệu giữa các thành phần. Ví dụ, một đặc tả có thể bao gồm một hàm đọc một biến.
Nếu hàm và biến được gán cho các thành phần khác nhau, thì giá trị của biến đó phải
được chuyển qua một bus. Việc bổ sung các chi tiết đặc tả mô tả giao tiếp giữa các
thành phần được gọi là giao diện. Giao diện liên quan đến một số vấn đề: tạo kích
thước bus, tạo giao thức và khớp giao thức.

3.3 Phân vùng

Khi các quá trình thực thi đồng thời truy cập vào cùng một tài nguyên, chẳng hạn
như một bus hoặc một bộ nhớ, chúng ta cần đảm bảo rằng chỉ có một tiến trình truy
cập tài nguyên đó tại một thời điểm nhất định. Trọng tài giải quyết yêu cầu truy cập
đồng thời bằng cách chỉ cấp quyền cho một quy trình tại một thời điểm.
Có hai loại các chương trình để xác định quyền ưu tiên trong quá trình phân xử. Lược
đồ ưu tiên chỉ định mức độ ưu tiên cho mỗi quy trình tĩnh; ưu tiên của quy trình không
bao giờ thay đổi. Lược đồ ưu tiên động xác định mức độ ưu tiên của một quy trình tại
thời điểm chạy, dựa trên kiểu truy cập của các quy trình.

3.4. Quá trình sinh

Chúng ta cần tái lập biểu tượng đặc tả chức năng thành một mô tả cấp hệ thống. Khi
làm như vậy, chúng tôi phải đảm bảo rằng mô tả mới có thể đọc được, có thể sửa đổi,
và được mô-đun hóa, và rằng các nhà thiết kế khác nhau có thể triển khai các phần
khác nhau. Chúng ta cũng phải đảm bảo rằng mô tả phù hợp để xử lý thêm bằng các
công cụ tổng hợp hoặc biên dịch. Cuối cùng, chúng ta phải đảm bảo rằng mô tả có thể
mô phỏng được, để chúng tôi có thể tiếp tục xác minh chức năng hệ thống

4. Tổ hợp phần mềm


Mô tả cấp hệ thống thường sở hữu các tính năng phức tạp không có trong lập trình
truyền thống ngôn ngữ, chẳng hạn như ngôn ngữ C. Một trình biên dịch điển hình
thường không thể biên dịch các tính năng này. Phần mềm tổng hợp là nhiệm vụ
chuyển đổi một mô tả phức tạp thành một chương trình phần mềm truyền thống có thể
được biên dịch bởi các trình biên dịch truyền thống.

Một tính năng phức tạp của mô tả cấp hệ thống là định nghĩa các tác vụ đồng thời.
Nếu hai tác vụ đồng thời được ánh xạ tới một bộ xử lý, sau đó các tác vụ phải được
lên lịch để thực thi một cách tuần tự. Trong việc lập lịch trình như vậy, điều quan
trọng là phải đảm bảo rằng mọi nhiệm vụ đều có cơ hội thực thi, hay nói cách khác,
không có nhiệm vụ nào bị bỏ lại. Một vấn đề khác là giảm thiểu số lượng busy-wait:
thời gian bộ xử lý dành để đợi một số sự kiện bên ngoài. Vấn đề thứ ba là đảm bảo
rằng các ràng buộc về thời gian cho mỗi nhiệm vụ được thỏa mãn.

6. Tổ hợp phần cứng


Sau khi tạo mô tả cấp hệ thống đã tinh chỉnh, chúng ta phải tạo hoặc tổng hợp phần
cứng để các phần mô tả được thực hiện trên các thành phần tùy chỉnh. Tổng hợp phần
cứng kết hợp tổng hợp cấp cao, tổng hợp tuần tự, tổng hợp logic và ánh xạ công nghệ.

Có một số nhiệm vụ phụ thuộc lẫn nhau tạo nên sự tổng hợp cấp cao. Biểu diễn nội
bộ cho thấy sự phụ thuộc vào dữ liệu và kiểm soát giữa các phép toán số học, chẳng
hạn như giữa bổ sung và so sánh. Phân bổ chọn, từ một thành phần chuyển đăng ký cơ
sở dữ liệu, các đơn vị lưu trữ, chức năng và bus được sử dụng trong thiết kế. Lập lịch
hoạt động bản đồ để điều khiển các bước, mỗi bước thường đại diện cho một chu kỳ
đồng hồ hoặc pha đồng hồ. Lập lịch là cần thiết vì tất cả các hoạt động thường không
thể được thực hiện cùng một lúc do phụ thuộc dữ liệu.

7. Mô phỏng và đồng mô phỏng


Ngày nay, mô phỏng là kỹ thuật xác minh phổ biến nhất. Mô phỏng hữu ích không
chỉ để xác minh đặc điểm kỹ thuật chức năng ban đầu mà còn để xác minh các mô tả
ký hiệu chi tiết hơn được tạo ra trong suốt quá trình thiết kế. Đặc biệt, chúng ta phải
đảm bảo rằng chức năng của một thiết kế phù hợp với đặc điểm kỹ thuật ban đầu, phát
hiện các tắc nghẽn hiệu suất có thể phát sinh từ việc ánh xạ đặc điểm kỹ thuật trừu
tượng tới các thành phần thực với tài nguyên hạn chế và đảm bảo rằng thiết kế thỏa
mãn các ràng buộc thời gian chi tiết để giao tiếp và đồng bộ hóa.

Mô phỏng phần cứng-phần mềm có hai mục tiêu cạnh tranh: tốc độ và độ chính xác.
Tốc độ là tốc độ thời gian mô phỏng tiếp tục. Mục tiêu thứ ba, thường cạnh tranh với
tốc độ, là gỡ lỗi tương tác khả năng từng bước thực thi hệ thống, kiểm tra các giá trị
trung gian và quay lại để gỡ lỗi hệ thống.

Đối với cả phần cứng và phần mềm, tốc độ thay đổi tùy thuộc vào kỹ thuật xác minh
đã chọn. Đối với phần mềm, cách tiếp cận chậm nhất nhưng "có thể gỡ lỗi" nhất là
sử dụng mô phỏng mô hình.

C. Kết Luận

Hệ thống nhúng là sự kết hợp của phần cứng và phần mềm cũng như các thành
phần khác mà chúng ta đã biết như điện thoại di động, máy nghe nhạc, bộ định tuyến
mạng…
Cách tiếp cận thiết kế truyền thống:
+ Thiết kế các thành phần phần cứng
+ Thiết kế các thành phần phần mềm.
+ Tích hợp
+ Kiểm tra và gỡ lỗi hệ thống.
Các lĩnh vực chính của quá trình thiết kế là
+ Đảm bảo đặc điểm kỹ thuật phần cứng và phần mềm âm thanh.
+ Xây dựng kiến trúc cho hệ thống được thiết kế.
+ Phân vùng
+ Cung cấp cách tiếp cận lặp đi lặp lại để thiết kế.
Thiết kế không chính thức
Đối với phần mềm nhúng hoặc các hệ thống phần cứng, cần phải có một phương
pháp mới, dựa trên hệ thống phân cấp của các mô hình ở các mức độ trừu tượng khác
nhau, là cần thiết. Sử dụng phương pháp luận này, chúng tôi bắt đầu với một đặc tả
chức năng chính thức và lấy ra mô hình cấp thấp hơn tiếp theo bằng cách khám phá
các vấn đề triển khai và tinh chỉnh mô hình cấp cao hơn với các lựa chọn triển khai
được thực hiện trong quá trình thăm dò.
Phương pháp xác định-khám phá-tinh chỉnh này có thể giúp các nhà quản lý và nhà
thiết kế đối phó với các yêu cầu phát triển sản phẩm ngày nay. Nó có thể dẫn đến tăng
năng suất đáng kể thông qua việc phát hiện sớm các lỗi chức năng và thông qua việc
khám phá nhanh hơn các phương án thiết kế.

You might also like