he thong nhung on tap

 

Câu1:Đặc điểm công nghệ của hệ nhúng:

Khả  năng  độc  lập  và  thông  minh  hoá:  Điều  này  được  chỉ  rõ  hơn  thông  qua  một  số  các thuộc tính yêu cầu, cụ thể như:

Độ tin cậy

Khả năng bảo trì và nâng cấp

Sự phổ cập và tiện sử dụng

Độ an toàn 

Tính bảo mật

Hiệu quả: Yêu cầu này được thể hiện thông qua một số các đặc điểm của hệ thống như sau:

    Năng lượng tiêu thụ

    Kích thước về phần cứng và phần mềm

    Hiệu quả về thời gian thực hiện

    Kích thước và khối lượng

    Giá thành

Phân hoạch tác vụ và chức năng hoá: Các bộ vi xử lý trong các hệ nhúng thường được sử dụng để đảm nhiệm và thực hiện một hoặc một nhóm chức năng rất độc lập và cũng đặc thù cho từng phần chức năng của hệ thống lớn mà nó được nhúng vào

Khả năng thời gian thực: Các hệ thống đều gắn liền với việc đảm nhiệm một chức năng chính  và  phải  được  thực  hiện  đúng  theo  một  khung  thời  gian  qui  định.  Thông  thường một chức năng của hệ thống phải được thực hiện và hoàn thành theo một yêu cầu thời gian  định  trước  để  đảm  bảo  thông  tin  cập  nhật  kịp  thời  cho  phần  xử  lý  của  các  chức năng  khác  và  có  thể  ảnh  hưởng  trực  tiếp  tới  sự  hoạt  động  đúng  và  chính  xác  của  toàn

hệ thống.

-Thời gian thực cứng là: Đối với hệ thống thời gian thực cứng, tất cả các chức năng của nó phải được thực thi chính xác trong một khoảng thời gian xác định, nếu không cả hệ thống sẽ bị lỗi nghiêm trọng

-Thời gian thực mềm: Đối với hệ thống thời gian thực mềm, các chức năng phải được thực hiện trong một khoảng thời gian xác định nhỏ nhất nhưng không bắt buộc

Câu 3: So sánh sự khác nhau giữa kiến trúc tập lệnh ngăn xếp với kiến trúc bộ tích lũy

   - Kiến trúc ngăn xếp sử dụng ngăn xếp để thực hiện lệnh và các toán tử nhận được từ

đỉnh ngăn xếp. Mặc dù cơ chế này hỗ trợ mật độ mã tốt và mô hình đơn giản cho việc

đánh giá cách thể hiện chương trình nhưng ngăn xếp không thể hỗ trợ khả năng truy

nhập ngẫu nhiên và hạn chế hiệu suất thực hiện lệnh.

  -Kiến trúc bộ tích luỹ với lệnh một toán tử ngầm mặc định chứa trong thanh ghi tích luỹ

có thể giảm được độ phức tạp bên trong của cấu trúc CPU và cho phép cấu thành lệnh

rất nhỏ gọn. Nhưng thanh ghi tích luỹ chỉ là nơi chứa dữ liệu tạm thời nên giao thông

bộ nhớ rất lớn.

Câu 4: Chức năng của các bus địa chỉ, bus dữ liệu, bus điều khiển.

Bus địa chỉ

Bus địa chỉ là các đường dẫn tín hiệu logic một chiều để truyền địa chỉ tham chiếu tớicác khu vực bộ nhớ và chỉ ra dữ liệu được lưu giữ ở đâu trong không gian bộ nhớ.Trong qúa trình hoạt động CPU sẽ điều khiển bus địa chỉ để truyền dữ liệu giữa các khu vực bộ nhớ và CPU. Các địa chỉ thông thường tham chiếu tới các khu vực bộ nhớ hoặc các khu vực vào ra, hoặc ngoại vi. Dữ liệu được lưu ở các khu vực đó thường là 8bit (1 byte), 16bit, hoặc 32bit tùy thuộc vào cấu trúc từng loại vi xử lý/vi điều khiển.Hầu hết các vi điều khiển thường đánh địa chỉ dữ liệu theo khối 8bit

Bus dữ liệu

Bus dữ liệu là các kênh truyền tải thông tin theo hai chiều giữa CPU và bộ nhớ hoặc các thiết bị ngoại vi vào ra. Bus dữ liệu được điều khiển bởi CPU để đọc hoặc viết các dữliệu hoặc mã lệnh thực thi trong qúa trình hoạt động của CPU. Độ rộng của bus dữ liệu nói chung sẽ xác định được lượng dữ liệu có thể truyền và trao đổi trên bus. Tốc độ truyền hay trao đổi dữ liệu thường được tính theo đơn vị là [byte/s]. Số lượng đườngbit dữ liệu sẽ cho phép xác định được số lượng bit có thể lưu trữ trong mỗi khu vực tham chiếu trực tiếp.

Bus điu khiển

Bus điều khiển phục vụ truyền tải các thông tin dữ liệu để điều khiển hoạt động của hệ

thống. Thông thường các dữ liệu điều khiển bao gồm các tín hiệu chu kỳ để đồng bộ

các nhịp chuyển động và hoạt động của hệ thống. Bus điều khiển thường được điều

khiển bởi CPU để đồng bộ hóa nhịp hoạt động và dữ liệu trao đổi trên các bus.

CÂU 5: CÁC LOẠI KIẾN TRÚC BỘ NHỚ
Kiến trúc bộ nhớ được chia ra làm hai loại chính và được áp dụng rộng rãi trong hầu hết các
Chip xử lý nhúng hiện nay là kiến trúc bộ nhớ von Neumann và Havard.
-Kiến trúc VON Neumann không phân biệt vùng chứa dữ liệu và mã chương trình. Cả
chương trình và dữ liệu đều được truy nhập theo cùng một đường. Điều này cho phép đưa dữ
liệu vào vùng mã chương trình ROM, và cũng có thể lưu mã chương trình vào vùng dữ liệu
RAM và thực hiện từ đó.

Kiến trúc Havard tách/phân biệt vùng lưu mã chương trình và dữ liệu. Mã chương trình chỉ
có thể được lưu và thực hiện trong vùng chứa ROM (Read Only Memory) và dữ liệu cũng chỉ
có thể lưu và trao đổi trong vùng RAM (Random Access Memory, Read/Write Memory).
Hầu hết các vi xử lý nhúng ngày nay sử dụng kiến trúc bộ nhớ Havard hoặc kiến trúc Havard
mở rộng (tức là bộ nhớ chương trình và dữ liệu tách biệt nhưng vẫn cho phép khả năng hạn
chế để lấy dữ liệu ra từ vùng mã chương trình).
Trong kiến trúc bộ nhớ Havard mở rộng thường sử dụng một số lượng nhỏ các con trỏ để lấy
dữ liệu từ vùng mã chương trình theo cách nhúng vào trong các lệnh tức thời.
Một số Chip vi điều khiển nhúng tiêu biểu hiện nay sử dụng cấu trúc Havard là 8031, PIC,
Atmel AVR90S. Nếu sử dụng Chip 8031 chúng ta sẽ nhận thấy điều này thông qua việc truy
nhập lấy dữ liệu ra từ vùng dữ liệu RAM hoặc từ vùng mã chương trình.

Ưu điểm nổi bật của cấu trúc bộ nhớ Harvard so với kiến trúc von Neumann là có hai kênh
tách biệt để truy nhập vào vùng bộ nhớ mã chương trình và dữ liệu nhờ vậy mà mã chương
trình và dữ liệu có thể được truy nhập đồng thời và làm tăng tốc độ luồng trao đổi với bộ xử
lý.

CÂU 6:Bộ nhớ chương trình – PROM (Programmable Read Only Memory)

Vùng để lưu mã chương trình.

Có ba loại bộ nhớ PROM thông dụng được sử dụng cho hệ nhúng:

EPROM, Bộ nhớ Flash, Bộ nhớ dữ liệu ‐ RAM

§ EPROM
Bao gồm một mảng các transistor khả trình. Mã chương trình sẽ được ghi trực tiếp và vi xử lý
có thể đọc ra để thực hiện. EPROM có thể xoá được bằng tia cực tím và có thể được lập trình
lại. Cấu trúc vật lý của EPROM được mô tả như trong

§ Bộ nhớ Flash
Cũng giống như EPROM được cấu tạo bởi một mảng transistor khả trình nhưng có thể xoá
được bằng điện và chính vì vậy có thể nạp lại chương trình mà không cần tách ra khỏi nền
phần cứng VXL. Ưu điểm của bộ nhớ flash là có thể lập trình trực tiếp trên mạch cứng mà nó
đang thực thi trên đó.

§ Bộ nhớ dữ liệu ‐ RAM
Vùng để lưu hoặc trao đổi dữ liệu trung gian trong quá trình thực hiện chương trình Có hai loại SRAM (Static RAM) và DRAM (Dynamic RAM)
§ RAM tĩnh
AM tĩnh được chế tạo theo công nghệ ECL (dùng trong CMOS và BiCMOS). Mỗi bit nhớ
gồm có các cổng logic với 6 transistor MOS. SRAM là bộ nhớ nhanh, việc đọc không làm
hủy nội dung của ô nhớ và thời gian thâm nhập bằng chu kỳ của bộ nhớ nhưng SRAM là một
nơi lưu

§ RAM động
RAM động dùng kỹ thuật MOS. Mỗi bit nhớ gồm một transistor và một tụ điện. Việc ghi nhớ
dữ liệu dựa vào việc duy trì điện tích nạp vào tụ điện và như vậy việc đọc một bit nhớ làm nội
dung bit này bị hủy. Do vậy sau mỗi lần đọc một ô nhớ, bộ phận điều khiển bộ nhớ phải viết
lại nội dung ô nhớ đó. Chu kỳ bộ nhớ cũng theo đó mà ít nhất là gấp đôi thời gian thâm nhập
ô nhớ.

CÂU 7: NGẮT LÀ GÌ?SO SÁNH NGẮT CỨNG VỚI NGẮT MỀM

Bộ điều khiển ngắt
Ngắt là một sự kiện xảy ra làm dừng hoạt động chương trình hiện tại để phục vụ thực thi một
tác vụ hay một chương trình khác.

§ Ngắt mềm
Ngắt mềm thực chất thực hiện một lời gọi hàm đặc biệt mà được kích hoạt bởi các nguồn
ngắt là các sự kiện xuất hiện từ bên trong chương trình và ngoại vi tích hợp trên Chip ví dụ
như ngắt thời gian, ngắt chuyển đổi A/D, …

§ Ngắt cứng
Ngắt cứng có thể được xem như là một lời gọi hàm đặc biệt trong đó nguồn kích hoạt là một
sự kiện đến từ bên ngoài chương trình thông qua một cấu trúc phần cứng (thường được kết
nối với thế giới bên ngoài qua các chân ngắt). Ngắt cứng thường được hiểu hoạt động theo cơ
chế dị bộ vì các sự kiện ngắt kích hoạt từ các tín hiệu ngoại vi bên ngoài và tương đối độc lập
với CPU, thường là không xác định được thời điểm kích hoạt.

CÂU 8: CHỨC NĂNG NGUYÊN LÍ HOẠT ĐỘNG CỦA WATCH DOG TIMER

§ Bộ định thời chó canh – Watchdog Timer

CHỨC NĂNG: thực hiện cơ chế tự giám sát và phát hiện sự cố phần mềm,Bản chất đó là một bộ định thời đặc biệt để định nghĩa một khung thời gian hoạt động bình thường của hệ thống. Nếu có sự cố phần mềm xảy ra sẽ làm hệ thống bị treo khi đó
bộ định thời chó canh sẽ phát hiện và giúp hệ thống thoát khỏi trạng thái đó bằng cách thực
hiện khởi tạo lại chương trình.

NGUYÊN LÍ HOẠT ĐỘNG:Chương trình hoạt động khi có bộ định thời phải đảm bảo reset nó trước khi khung thời gian bị vi phạm phụ thuộc vào sự đánh giá của người thực hiện phần mềm, thiết lập khoảng thời gian đảm bảo chắc chắn hệ thống thực hiện bình

CÂU 9: So sánh giữa DMA chu kỳ đơn với chu kỳ nhóm

DMA:DMA (Direct Memory Access) là cơ chế hoạt động cho phép hai hay nhiều vi xử lý hoặc
ngoại vi chia sẻ bus chung. Ứng dụng phổ biến nhất của DMA là chia sẻ bộ nhớ chung giữa hai bộ vi xử lý hoặc các ngoại vi để truyền dữ liệu trực tiếp giữa thiết bị ngoại vi vào/ra và bộ nhớ dữ liệu của VXL. Thông thường các ngoại vi kết nối với hệ thống phải chia sẻ bus dữ liệu và được điều khiển bởi CPU trong quá trình trao đổi dữ liệu

DMA chu kỳ nhóm, ngoại vi sẽ nhận được quyền điều khiển và truyền
khối dữ liệu rồi trả lại quyền điều khiển cho CPU.

Trong cơ chế DMA chu kỳ đơn ngoại vi
sau khi nhân được quyền điều khiển bus chỉ truyền một từ dữ liệu rồi trả lại ngay quyền kiểm soát bộ nhớ và bus dữ liệu cho CPU

,DMA chu kỳ nhóm cần ít dữ liệu thông tin điều khiển (overhead) nên có khả năng trao đổi với tốc độ cao nhưng lại chiếm nhiều thời gian truy nhập bus do truyền cả khối dữ liệu lớn. Điều này có thể ảnh hưởng đến hoạt động của cả hệ thống do trong suốt quá trình thực hiện DMA nhóm

CÂU 10. So sánh DSP dấu phảy tĩnh với DSP dấu phảy động?

DSP vẫn được biết tới như một loại vi điều khiển đặc biệt với khả năng xử lý nhanh để phục
vụ các bài toán yêu cầu khối lượng và tốc độ xử lý tính toán lớn. Với ưu điểm nổi bật về độ
rộng băng thông của bus và thanh ghi tích luỹ, cho phép ALU xử lý song song với tốc độ đọc
và xử lý lệnh nhanh hơn các loại vi điều khiển thông thường. Chip DSP cho phép thực hiện
nhiều lệnh trong một nhịp nhờ vào kiến trúc bộ nhớ Havard. Thông thường khi phải sử dụng DSP tức là để đáp ứng các bài toán tính toán lớn và tốc độ
cao vì vậy định dạng biểu diễn toán học sẽ là một yếu tố quan trọng để phân loại và được
quan tâm. Hiện nay chủ yếu chúng vẫn được phân loại theo hai kiểu là dấu phảy động và dấu
phảy tĩnh

DSP dấu phảy tĩnh:Các loại DSP dấu phảy tĩnh thường là loại 16-bit hoặc 24-bit còn các loại dấu phảy tĩnh thường là 32-bit.các loại DSP dấu phảy tĩnh có giá thành rẻ hơn các loại DSP dấu phảy động vì yêu cầu số lượng chân On-chip ít hơn và cần sử dụng lượng silicon ít hơn. Ưu điểm nổi bật của các DSP dấu phảy động là có thể xử lý và biểu diễn số trong dải phạm vi giá trị rộng và động. Do đó vấn đề về chuyển đổi và hạn chế về phạm vi biểu diễn số không phải quan tâm như đối với loại DSP dấu phảy tĩnh.

CÂU 11:CẤU TRÚC CHUNG CỦA PLA

Lịch sử phát triển của các chủng loại Chip khả trình mảng PLA (Programmable Logic Array)
được bắt nguồn từ nguyên lý bộ nhớ chương trình PROM (Programmable Read‐Only
Memory). Trong đó các đầu vào địa chỉ đóng vai trò như các đường vào của mạch logic và Lịch sử phát triển của các chủng loại Chip khả trình mảng PLA (Programmable Logic Array)
được bắt nguồn từ nguyên lý bộ nhớ chương trình PROM (Programmable Read‐Only
Memory). Trong đó các đầu vào địa chỉ đóng vai trò như các đường vào của mạch logic và và
các đường dữ liệu ra đóng vai trò như các đường ra của mạch logic. Vì PROM không thực sự
phù hợp cho mục đích thiết kế các mạch logic nên PLA đã ra đời vào đầu thập kỷ 70. Nó rất
phù hợp để thực hiện mạch logic có dạng tổng các tích (vì cấu thành bởi các phần tử logic
AND và OR). Nhưng nhược điểm là chi phí sản xuất cao và tốc độ hoạt động thấp. Để khắc
phục nhược điểm này PAL (Programmable Array Logic) đã được phát triển.

CẤU TRÚC CHUNG CỦA PLA: được cấu thành từ các phần tử AND khả trình và phần tử OR gán cố định và có chứa cả phần tử flip‐flop ở đầu ra nên có khả năng thực thi các mạch logic tuần tự.
Từ khi được ra đời và phát triển PAL trở thành cơ sở cho sự ra đời của hàng loạt các chủng
loại Chip khả trình mảng với cấu trúc phức tạp hơn như SPLD (Simple Programmable Logic
Device), CPLD (Com‐plex Programmable Logic Device), và sau này là FPGA (Field Programmable Gate Array). SPLD cũng là tên gọi cho nhóm các chủng loại Chip kiểu tương
tự như PAL, PLA. Về mặt cấu trúc thì SPLD cho phép tích hợp logic với mật độ cao hơn so
với PAL thông thường, nhưng kích thước của nó sẽ tăng lên rất nhanh nếu tiếp túc mở rộng
và tăng mật độ tích hợp số đầu vào. Để đáp ứng nhu cầu mở rộng mật độ tích hợp CPLD đã
được phát triển. Nó là sự tích hợp của nhiều khối SPLD

cau truc cua FPGA - đang trở thành một sự lựa chọn thay thế rất cạnh tranh của các chip xử lý nhúng
ASICs. Nó hỗ trợ các ưu điểm về chức năng lựa chọn giống như ASICs nhưng cho phép
chỉnh sửa và thiết kế lại sau khi sử dụng và giá thành phát triển thấp hơn. FPGA cho phép
khả năng thiết kế linh hoạt và thích nghi dễ dàng cho các tiện ích thiết bị tối ưu, trong khi vẫn
duy trì được không gian kích thước phần cứng và năng lượng tiêu thụ của hệ thống. Điều này
không dễ dàng nhận được khi thiết kế dựa trên nền các Chip DSP. FPGA thực sự phù hợp cho các ứng dụng đòi hỏi lượng tính toán lớn như trong xử lý tín hiệu.


§ Cấu tạo từ SRAM:
Với loại này các mắt kết nối khả trình được thực hiện bằng các phần tử SRAM, chính vì vậy
cho phép thực hiện lập trình lặp lại nhiều lần. Ưu điểm nổi bật của loại này là các ý tưởng
thiết kế mới có thể được thực thi và thử nghiệm nhanh chóng.nhược điểm của FPGA cấu tạo từ các phần tử SRAM là chúng phải cấu hình lại mỗi khi nguồn hệ thống được cung cấp.

FPGA với cấu tử kiểu cầu chì được lập trình
offline bằng một thiết bị lập trình chuyên dụng. Ý tưởng chế tạo loại FPGA này xuất phát từ
nhu cầu về một thiết bị khả trình có khả năng lưu cấu hình sau khi được sử dụng. Tức là nó
không phải làm công việc cấu hình mỗi khi nguồn hệ thống được cung cấp. Khi FPGA
anti‐fused đã được lập trình thì nó không thể bị thay đổi hay được lập trình lại nữa.ưu điểm nổi bật của FPGA anti‐fused là kiểu cấu trúc liên kết khá bền vững với các loại
nhiễu bức xạ. Đặc điểm này khá quan trọng khi thiết bị phải làm việc trong môi trường tiềm
năng như quân sự hoặc hàng không vũ trụ,Một ưu điểm nổi bật của loại FPGA anti‐fused là khả năng bảo vệ công nghệ.nhược điểm lớn nhất của FPGA anti-fused là chỉ có thể được lập trình và cấu hình một lần. Vì vậy nó chỉ thực sự phù hợp khi thực thi hoàn chỉnh sản phẩm cuối cùng và không
phù hợp với mục đích thiết kế phát triển.

§ Cấu tạo từ EEPROM/FLASH
EEPROM or FLASH‐based FPGAs cũng có nguyên lý cấu tạo tương tự như loại FPGA
SRAM. Các phần tử cấu hình của nó được kết nối dựa trên một chuỗi thanh ghi dịch dài. Khi đã được cấu hình đã được lập trình thì chúng có thể được
duy trì và không bị mất đi như nguyên lý lưu giữ của EEPROM hoặc FLASH. FPGA‐EEPROM/FLASH có cấu tạo nhỏ hơn so với loại FPGA‐SRAM vì vậy cũng có thể
giảm được thời gian lan truyền tín hiệu kết nối liên thông giữa các phần tử logic.

Cấu tạo từ tổ hợp FLASH‐SRAM

FLASH sẽ được sử dụng để lưu các nội dung cấu hình để sao chép cho các phần tử
cấu hình SRAM.

CÂU 14 . Nguyên lý thực hiện pipeline

pipeline thực hiện trên nguyên lí xếp chồng cuốn chiếu liên tục các lệnh theo các phân đoạn thực hiện lệnh. Thông thường mỗi một lệnh được chia ra làm nhiều phân đoạn thực hiện, phổ biến
hiện nay là 5 phân đoạn tuần tự như sau:

(1) Trỏ lệnh (Instruction Fetch): Thực hiện trỏ tới lệnh thực hiện bằng cách đọc địa chỉ
lệnh từ thanh ghi con trỏ lệnh (PC), đọc lệnh đó ra từ bộ nhớ chương trình và tính toán
rồi nạp giá trị mới vào trong thanh ghi con trỏ lệnh để trỏ tới lệnh sẽ thực thi tiếp theo.
(2) Giải mã lệnh (Decode): Thực hiện thông dịch và chuyển đổi mã lệnh thành dạng mã
để ALU có thể hiểu và chuẩn bị thực thi. Quá trình này thực chất là quá trình đọc và
chuyển đổi nội dung trong các thanh ghi chương trình.
(3) Thực hiện lệnh (Execute): ALU thực thi lệnh vừa được giải mã.
(4) Truy nhập bộ nhớ dữ liệu (Memory): Đọc ra hoặc viết vào bộ nhớ dữ liệu nếu lệnh
thực hiện có nhu cầu này.
(5) Viết trở lại (Write back): Hoàn thành và cập nhật nội dung các thanh ghi.

CÂU 15. Hiện tượng Hazard dữ liệu là gì? Hãy nêu các trường hợp Hazard dữ liệu có thể xảy
ra?

Hiện tượng harzard xảy ra khi có sự phụ thuộc lẫn giữa các lệnh nằm trong khoảng xếp
chồng thực hiện cuốn chiếu theo nguyên lý pipeline.

CÁC TRƯỜNG HỢP

‐ RAW (read after write): Đọc sau khi viết :Khi lệnh i và j đều cần sử dụng và trao đổi thông tin với cùng một giá trị ô nhớ, trong đó lệnh
i cần phải thực hiện xong và cập nhật giá trị vào ô nhớ đó rồi lệnh j mới có thể đọc và sử
dụng. Nếu lệnh i chưa thực hiện xong mà lệnh j đã đọc giá trị ô nhớ đó thì sẽ xảy ra hiện
tượng được gọi là hazard dữ liệu

‐ WAW (write after write): Viết sau khi viết :Hiện tượng này được gọi là hazard dữ liệu khi có sự phụ thuộc đầu ra và nhiều lệnh cùng có nhu cầu truy nhập viết vào cùng một biến hay một ô nhớ

‐ WAR (write after read): Viết sau khi đọc :j viết vào toán tử đích trước khi nó được đọc bởi lệnh i do đó lệnh I sẽ nhận được giá trị sai. Hiện tượng Hazard này xuất hiện khi có sự phụ thuộc toán hạng trong các phép tính

CÂU 17. Trình bày các phương pháp có thể để tiến hành thiết kế hệ thống nhúng bằng máy
tính?

- -Mô phỏng off line

Trong hệ thống phát triển này nền phần cứng nhúng đích được mô phỏng bằng mô hình chạy trên PC và đối tượng điều khiển cũng là mô hình mô phỏng chạy trên PC

--Hệ thống phát triển (software in the loop). Hệ thống này mô phỏng nền phần cứng thực trên PC cho đáp ứng hành vi giống như với vi mạch cứng thực và mô hình đối tượng được mô hình thực thi trên PC

 Mô phỏng thời gian thực (Hardware in the Loop) Hệ thống này sử dụng nền phần cứng nhúng đích thực nhưng đối tượng thì chỉ là mô hình thời gian thực không phải đối tượng thực

 Mô hình phát triển thực Hệ thống này sử dụng nền phần cứng nhúng đích thực với đối tượng thực

Câu 18. So sánh kiến trúc vi hạt nhân với kiến trúc đơn hạt nhân.

Hai kiến trúc thiết kế phần hạt nhân kinh điển nhất là kiến trúc vi hạt nhân và đơn hạt nhân (monolithic). Các vi hạt nhân cung cấp các chức năng điều hành cơ bản cốt lõi (thô) theo cơ chế các module tương đối độc lập đảm nhiệm các tác vụ cụ thể và chuyển rời rất nhiều các dịch vụ điển hình điều hành hệ thống thực thi trong Không gian người sử dụng Kiến trúc vi hạt nhân cung cấp độ an toàn cao bởi vì dịch vụ hệ thống chạy ở tầng người sử dụng với hạn chế về truy nhập vào tài nguyên của hệ thống và có thể được giám sát. Kiến trúc vi hạt nhân có thể được xây dựng một cách mềm dẻo để phù hợp với cấu hình phần cứng khác nhau một cách linh hoạt hơn so với 11 kiểu kiến trúc hạt nhân monilithic. Tuy nhiên do tính độc lập tương đối giữa các modul trong vi hạt nhân nên cần thiết phải có một cơ chế trao đổi thông tin hay truyền thông giữa các modul đó vì vậy có thể là lý do làm chậm tốc độ và giảm tính hiệu quả hoạt động của hệ thống. Đặc điểm nổi bật và cốt lõi của kiến trúc vi hạt nhân là kích thước nhỏ và dễ dàng sửa đổi cũng như xây
dựng linh hoạt hơn. Các dịch vụ thực thi ở tầng trên của hạt nhân vì vậy đạt được độ an toàn Cao.Kiểu kiến trúc monolithic cung cấp tất cả chức năng/dịch vụ chính yếu thông qua một qua trình xử lý đơn lẻ. Chính vì vậy kích thước của chúng thường lớn hơn kiểu kiến trúc vi hạt nhân. Loại hình kiến trúc này thường được áp dụng chủ yếu cho các phần cứng cụ thể mà hạt nhân monolithic có sự tương tác trực tiếp với phần cứng nhờ vậy màkhả năng tối ưu cũng dễ dàng hơn so với áp dụng kiểu kiến trúc vi hạt nhân. Chính vì vậy cũng là lý do tại sao kiến trúc monolithic không thể thay đổi mềm dẻo linh hoạt như kiểu vi hạt nhân.

Câu 19. Các tác vụ chính và cấu trúc của hệ điều hành thời gian thực là gì?
Hệ thống điều hành thời gian thực là hệ điều hành hỗ trợ khả năng xây dựng các hệ
thống thời gian thực Hệ thống điều hành với phần lõi là hạt nhân phải đảm nhiệm các tác vụ chính như sau:
Xử lý ngắt
 Lưu trữ ngữ cảnh chương trình tại thời điểm xuất hiện ngắt
 Nhận dạng và lựa chọn đúng bộ xử lý và phục vụ dịch vụ ngắt

Điều khiển quá trình
 Tạo và kết thúc quá trình/tác vụ
 Lập lịch và điều phối hoạt động hệ thống
 Định thời
Điều khiển ngoại vi
 Xử lý ngắt
 Khởi tạo giao tiếp vào ra

Câu 20. Lập lịch là gì? Trong kỹ thuật lập lịch hãy liệt kê một vài phương pháp lập lịch
phổ biến ?
Lập lịch là một phép thực hiện phân bổ và gán quy trình thực thi các tác vụ cho bộ xử lý sao cho mỗi tác vụ được thực hiện hoàn toàn.
Có một số thông tin về tác vụ luôn phải quan tâm đối với bất kỳ bộ lập lịch thời gian thực nào, bao gồm:
• Thời gian xuất hiện i a (arrival time): Khi sự kiện xảy ra và tác vụ tương ứng được
kích hoạt.
• Thời điểm bắt đầu thực thi i r (release time): Thời điểm sớm nhất khi việc xử lý đã
sẵn sàng và có thể bắt đầu.
• Thời điểm bắt đầu thực hiện i s (starting time): Là thời điểm mà tại đó tác vụ bắt
đầu việc thực hiện của mình.
• Thời gian tính toán/thực thi i c (Computation time): Là khoảng thời gian cần thiết
để bộ xử lý thực hiện xong nhiệm vụ của mình mà không bị ngắt.
• Thời điểm hoàn thành i f (finishing time): Là thời điểm mà tại đó tác vụ hoàn thành
việc thực hiện của mình.
• Thời gian rủi ro/ xấu nhất i w (worst case time): khoảng thời gian thực hiện lâu nhất
có thể xảy ra.
• Thời điểm kết thúc i d (due time): Thời điểm mà tác vụ phải hoàn thành.
Các phương pháp lập lịch phổ biến: Tuỳ thuộc vào loại hình tác vụ, người ta ra hai phương pháp lập lịch là có chu kỳ và không có chu kỳ.
Lập lịch không ưu tiên(non
preemptive): Phương pháp này đảm bảo các tác vụ được thực hiện hoàn thành mỗi khi thực thi
Lập lịch ưu tiên(preemptive): Phương pháp này khắc phục nhược điểm của lập lịch non-preemptive khi thời gian thực thi các tác vụ lâu . Các tác vụ sẽ được thực hiện và có thể bị ngắt giữa chừng để phục vụ thực thi các tác vụ khác .thời gian đáp ứng cho các sự kiện và tác vụ ngắn
Lập lịch offline/tĩnh: Việc lập lịch được thực hiện dựa trên các hiểu biết hoặc dự báo về

các sự kiện tác vụ thực hiện trong hệ và được quyết định tại thời điểm thiết kế và được áp dụng
cố định trong suốt quá trình hoạt động của hệ thống
Lập lịch online/động: Bộ xử lý thực hiện việc lập lịch trong quá trình thực thi dựa trên
cơ sở các thông tin hoạt động hiện hành của hệ thống Sơ đồ lập lịch là không xác định
trước và thay đổi động theo quá trình thực hiện
Lập lịch tập trung hoặc phân tán: Việc lập lịch được thực hiện áp dụng cho các tác vụ
thực thi bởi một (tập trung) hoặc nhiều bộ xử lý (phân tán).
Lập lịch Mono hay Multi
processor: Nhiệm vụ lập lịch và thực thi được đảm nhiệm bởi
một (mono) hoặc nhiều bộ vi xử lý (multi).

Tính khả lập lịch: Một hệ thống với một tập các tác vụ và các điều kiện ràng buộc được
gọi là khả lập lịch nếu tồn tại ít nhất một cơ chế lịch trình thực hiện thoả mãn các tác vụ
và điều kiện ràng buộc đó.

Câu 21. Semaphore là gì? Giải thích cơ chế hoạt động của semaphore ?
Semaphores là một cấu trúc dữ liệu được định nghĩa để loại trừ khả năng xung đột
trong quá trình chia sẻ tài nguyên của các tác vụ trong hoạt động của hệ thống.Semaphores hỗ trợ hai hoạt động chính như sau:
 wait(semaphore): giảm và khoá cho tới khi semaphore được mở
 signal(semaphore): tăng và cho phép thêm một luồng mới được tham gia hoạt
động

-giải thích cơ chế hoạt dộng của semaphore

Trong hoạt động phối hợp cùng với semaphore có một hàng đợi gồm các tác vụ cần được thực
thi sẽ có một số tình huống hoạt động cơ bản như sau:
Khi một luồng (thread) gọi wait():
• Nếu semaphore được mở thì luồng đó sẽ được gia nhập và tiếp tục thực thi
• Nếu semaphore đang bị đóng thì nhánh đó sẽ bị khoá và phải nằm chờ trong hàng đợi cho tới
khi nào semaphore được mở signal() sẽ mở semaphore:
• nếu một luồng đang nằm trong hàng đợi và không bị khoá
• nếu không có luồng nào trong hàng đợi và tín hiệu signal sẽ được nhớ và dành cho luồng tiếp
theo

Các loại Semaphore
Mutex semaphore
Cho phép điều khiển hoạt động truy nhập đơn lẻ vào tài nguyên chia sẻ của
hệ thống. Đảm bảo loại trừ xung đột trong hoạt động truy nhập đồng thời của nhiều tác
vụ, và chỉ có một tác vụ được thực thi tại mỗi thời điểm.

Counting semaphore Điều khiển tài nguyên mà có thể phục vụ cùng một lúc nhiều tác vụ hoặc một
nguồn tài nguyên cho phép phục vụ một số nhất định các tác vụ không đồng
bộ và hoạt động đồng thời.
Nhiều luồng có thể truyền Semaphore
Số lượng luồng được quyết định bởi biến đếm N của Semaphore

Thực chất mutex semaphore là một dạng đặc biệt của counting semaphore với biến đếm
N=1.
Thực thi Semaphore
Sử dụng Semaphore trong việc đồng bộ hai quá trình tạo và sử dụng hạng mục thông
qua bộ đệm trung gian.
Nhận xét:
Semaphores có thể được sử dụng để giải quyết bất kỳ một bài toán hay vấn đề
đồng bộ truyền thống nào
Tuy nhiên chúng có một số nhược điểm
o Chúng chủ yếu sử dụng các biến toàn cục trong việc điều khiển hoạt động
đồng bộ nên có thể truy nhập bất kỳ đâu trong hệ thống Æ khó kiểm soát
o Không có sự liên kết chặt chẽ giữa semaphore và dữ liệu mà được nó điều
khiển.
o Được sử dụng đồng thời cho cả việc loại trừ xung đột (mutual exclusion) và
hoạt động đồng bộ cho các tác vụ (scheduling)

Câu 22. Hãy nêu chu trình phát triển phần mềm hệ nhúng?

Quá trình phát triển phần mềm nhúng thực hiện theo chu trình sau:
(1) Problem specification
(2) Tool/chip selection
(3) Software plan
(4) Device plan
(5) Code/debug
(6) Test
(7) Integrate

Câu 23. Mạng Petri dùng để mô hình hóa sự kiện và tác vụ: qui ước biểu diễn, các tình
huống hoạt động cơ bản?

-Qui ước biểu diễn mô hình Petrinet
Trong qui ước biểu diễn hình hoạ thì mạng Petri sử dụng các vòng tròn để biểu diễn các điều
kiện, các hộp để biểu diễn các sự kiện, và mũi tên biểu diễn quan hệ luồng. Một ví dụ minh hoạ
về mạng Petri được mô tả trong Hình 6
1, trong đó:
• P = {p1, p2 ,..., pnp}là tập gồmnp vị trí được biểu diễn trong mô hình (được mô tả bởi các vòng
tròn);
• 1 2 { , ,..., } nt T = t t t là tập gồmnt chuyển đổi trong tập chuyển đổi biểu diễn trong mô
hình(được mô tả bởi các hình chữ nhật);
• I biểu diễn quan hệ đi vào chuyển đổi và được ký hiệu bởi đường mũi tên theo hướng từ các vị
trí tới các chuyển đổi;
• O biểu diễn quan hệ đi ra khỏi chuyển đổi và được ký hiệu bởi các đường mũi tên theo hướng
từ các chuyển đổi tới các vị trí;
• 1 2 { , ,... } np M = m m m là dấu trạng thái của các chuyển đổi trong hệ thống. Các giá trị i m là
số các thẻ bài (được ký hiệu như các chấm tròn đen) chứa bên trong các vị trí i p trong tập dấu M
. ----Các tình huống hoạt động cơ bản:
 Đồng hành (Song song) và đồng bộ
Trong hệ thống dự phòng với độ tin cậy cao, mô hình này được sử dụng để biểu diễn hai thành
phần C1 và C2 song song để đảm bảo hoạt động dự phòng; trong trường hợp này các vị trí p1 và
p3 biểu diễn điềukiện làm việc, các vị trí p2 và p4 biểu diễn điều kiện lỗi, t1 và t2 là các sự kiện
lỗi trongcác tác vụ C1 và C2 một cách tương ứng

 Chia sẻ đồng bộ
Sự thiếu thốn về tài nguyên làm hạn chế hoạt động của hệ thống trong quá trình xử lý thậm chí
làm tắc nghẽn hệ thống. Việc mô hình và phân tích các hệ thống có hiện tượng tắc nghẽn là một
tác vụ khó khăn trong hầu hết các quá trình mô hình có thể gặp phải.

 Tuần tự
Hoạt động tuần tự sẽ được mô tả và minh hoạ bởi hoạt động của bộ tạo và bộ sử dụng thông qua
một bộ đệm. Bộ tạo sẽ sinh ra các đối tượng để đưa vào trong một bộ đệm và sẽ được lấy ra bởi
bộ sử dụng.

 Loại trừ xung đột
Hai tác vụ C1 và C2 được phép làm việc song song và cùng chia sẻ tài nguyên CS, nhưng không
được truy nhập vào tài nguyên đồng thời

Bạn đang đọc truyện trên: AzTruyen.Top

Tags: #huy