20
1 Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như một khả năng tăng tính linh hoạt của hệ thống tự động Nguyễn Viết Hiếu Trường Đại hc Công nghLuận văn Thạc sĩ ngành: Kỹ thuật điện tử; Mã số: 60 52 70 Người hướng dẫn: PGS.TS. Ngô Diên Tập Năm bảo vệ: 2012 Abstract: Trình bày các khái niệm: kiến trúc tái cấu hình; tái cấu hình linh động; khả năng chịu lỗi trong kiến trúc tái cấu hình; các phương án giảm thiểu lỗi cổ điển; chiến lược giảm (sự kiện đơn nhiễu loạn, bức xạ) SEU trong các (mảng cổng logic lập trình được) FPGA dựa trên SRAM. Nghiên cứu chịu lỗi trong chip hệ thống đa nhân động (DyMPSoC): tóm tắt; giới thiệu; (chíp hệ thống đa nhân động chịu lỗi) FT-DyMPSoC; thay đổi quy trình thiết kế; cải tiến FT-DyMPSoC; thực hiện chi tiết. Tìm hiểu các mô hình phân tích. Keywords: Kỹ thuật điện tử; Hệ thống nhúng; Điều khiển điện tử; Hệ thống tự động Content CHƢƠNG 1: GII THIU 1.1. Đặt vấn đề Các ng dng quan trọng như quân sự, hàng không vũ trụ, ô tô và y t ế yêu cu phi thc hin chiến lược chu l ỗi để đảm bo hoạt động tin cy trong thi gian sng ca hthng. Các yêu cu nghiêm ngt vđộ tin cậy đặt ra nhng thách thc mi cho ngành thi ết kế điện t. Ngoài ra, do quá trình biến thvà lão hóa, sau mt thi gian dài hoạt động, các mạch điện t sinh l i. Hu quca loi l ỗi này là vĩnh viễn và không thgi i quyết bng cách sdng các chiến lược áp dng cho nhng l i thoáng qua. Hình 1.1: Các xu hương trong ngành công nghiệp ô tô (dliệu được cung cp bi TRW Auto-motive) Mt gi i pháp cho vấn đề này, được chp nhn trong ngành công nghip ô tô, là công ngh“mảng các cng logic lập trình được” (FPGA) cho phép t hêm tính linh hot, gi m chi phí và htrthc hin yêu cu.

Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

Embed Size (px)

Citation preview

Page 1: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

1

Cấu hình lại phần cứng trong kiến trúc hệ thống

nhúng như một khả năng tăng tính linh hoạt của hệ

thống tự động

Nguyễn Viết Hiếu

Trường Đại học Công nghệ

Luận văn Thạc sĩ ngành: Kỹ thuật điện tử; Mã số: 60 52 70

Người hướng dẫn: PGS.TS. Ngô Diên Tập

Năm bảo vệ: 2012

Abstract: Trình bày các khái niệm: kiến trúc tái cấu hình; tái cấu hình linh động; khả năng chịu

lỗi trong kiến trúc tái cấu hình; các phương án giảm thiểu lỗi cổ điển; chiến lược giảm (sự kiện

đơn nhiễu loạn, bức xạ) SEU trong các (mảng cổng logic lập trình được) FPGA dựa trên SRAM.

Nghiên cứu chịu lỗi trong chip hệ thống đa nhân động (DyMPSoC): tóm tắt; giới thiệu; (chíp hệ

thống đa nhân động chịu lỗi) FT-DyMPSoC; thay đổi quy trình thiết kế; cải tiến FT-DyMPSoC;

thực hiện chi tiết. Tìm hiểu các mô hình phân tích.

Keywords: Kỹ thuật điện tử; Hệ thống nhúng; Điều khiển điện tử; Hệ thống tự động

Content

CHƢƠNG 1: GIỚI THIỆU

1.1. Đặt vấn đề

Các ứng dụng quan trọng như quân sự, hàng không vũ trụ, ô tô và y tế yêu cầu phải thực hiện chiến

lược chịu lỗi để đảm bảo hoạt động tin cậy trong thời gian sống của hệ thống. Các yêu cầu nghiêm ngặt

về độ tin cậy đặt ra những thách thức mới cho ngành thiết kế điện tử.

Ngoài ra, do quá trình biến thể và lão hóa, sau một thời gian dài hoạt động, các mạch điện tử sinh lỗi.

Hậu quả của loại lỗi này là vĩnh viễn và không thể giải quyết bằng cách sử dụng các chiến lược áp dụng

cho những lỗi thoáng qua.

Hình 1.1: Các xu hương trong ngành công nghiệp ô tô (dữ liệu được cung cấp bởi TRW Auto-motive)

Một giải pháp cho vấn đề này, được chấp nhận trong ngành công nghiệp ô tô, là công nghệ “mảng các

cổng logic lập trình được” (FPGA) cho phép thêm tính linh hoạt, giảm chi phí và hỗ trợ thực hiện yêu

cầu.

Page 2: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

2

Khái niệm về lập trình lại đã quyết định nhiều về phương pháp tiếp cận để thiết kế FPGA. Hơn nữa,

những tính năng tiên tiến gần đây được giới thiệu trong các FPGA hiện đại, cấu hình lại từng phần linh

động (DPR) cung cấp cơ hội hơn nữa để tăng cường sự linh hoạt và có độ tin cậy của hệ thống mục

tiêuVài nét về dự án “The CIFAER”

Các hoạt động nghiên cứu trong dự án CIFAER (Communication Intra-véhicule Flexible et

Architecture Embarquée Reconfigurable) (hình 1.2) là tập trung vào định nghĩa của một kiến trúc xây

dựng xung quanh một đơn vị xử lý hỗ trợ DPR (bộ xử lý chung kết hợp với một khu vực tái cấu hình

được) và hỗ trợ giao diện truyền thông linh hoạt.

Hình 1.2: Tổ chức dự án CIFAER

Việc xây dựng một ECU tái cấu hình được cần phải khai thác một số lợi ích của truyền thông PLC

hoặc RF. Thật vậy, những kết nối này sẽ cho phép thêm các chức năng (với chi phí thấp) trong xe hoặc có

thể mang dữ liệu giới hạn trước đây vào trong một ECU duy nhất. Các khía cạnh cấu hình lại có ba mục

tiêu chủ yếu:

1. Hỗ trợ các kênh truyền thông mới

2. Hỗ trợ cập nhật tính năng mới trong xe

3. Đảm bảo độ tin cậy bằng cách truy cập dữ liệu của một ECU bị lỗi

Chủ đề của luận văn này phù hợp với nội dung của dự án CIFAER. Dự án nhằm mục đích cung cấp

một mạng truyền thông linh hoạt để xem xét việc chuyển đổi nhiệm vụ. Nhiệm vụ quan trọng cần phải

được duy trì bằng cách chuyển chúng từ ECU bị lỗi tới ECU khác không lỗi.

1.2. Mục tiêu của luận văn

Trong luận văn này, các dịch vụ có khả năng chịu lỗi trong hệ thống ô tô sử dụng mô hình cấu hình lại

từng phần linh động sẽ được giới thiệu. Việc sử dụng máy tính có khả năng cấu hình lại linh động có hai

mục tiêu:

1. Giảm số lượng các ECU, do đó giảm chi phí phát triển và đưa vào dự phòng phần cứng cũng như

việc thực hiện thống nhất cho tất cả các nhiệm vụ, cho dù quan trọng hay không.

2. Hỗ trợ phương pháp tiếp cận cổ điển và công nghiệp hiệu quả cho các khía cạnh về độ tin cậy. Bằng

cách thực hiện một phát hiện lỗi, sử dụng máy tính cấu hình lại và khớp nối với một sự chuyển đổi nhiệm

vụ (phần cứng và phần mềm), nó có thể làm tăng đáng kể sự vững mạnh của hệ thống, trong khi duy trì

hiệu suất tối ưu.

Căn cứ vào kiến trúc phần cứng và phần mềm điều khiển của nó, luận văn này sẽ giới thiệu quá trình

thực hiện cấu hình lại từng phần linh hoạt cũng như các dịch vụ quản lý chiến lược khả năng chịu lỗi.

1.3. Các nội dung đóng góp

FT-DyMPSoC là một hệ thống không chỉ phối hợp tất cả các tính năng của một MPSoC linh động mà

còn tích hợp các kỹ thuật chịu lỗi để đối phó với các lỗi tiềm năng.

Luận văn này cũng giới thiệu một sửa đổi về quy trình thiết kế giúp tạo ra các bộ vi xử lý hoàn toàn

linh động. Quy trình thay đổi đòi hỏi phải định nghĩa khái niệm WRAPPER và SOCKET.

Mô hình phân tích được đưa ra trong Chương 4 để giúp dễ dàng đánh giá hiệu suất / sự cân bằng độ tin

cậy trong khi bao gồm cả kỹ thuật chịu lỗi vào các hệ thống mục tiêu.

Page 3: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

3

Page 4: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

4

CHƢƠNG 2: CÁC KHÁI NIỆM VÀ CÁC CÔNG VIỆC LIÊN QUAN

2.1. Kiến trúc tái cấu hình

2.1.1. Giới thiệu

Thiết bị có thể cấu hình lại chi tiết chủ yếu là đại diện bởi các thiết bị logic có thể lập trình được phức

tạp (CPLD) và mảng cổng logic lập trình được (FPGA).

Hình 2.1 cung cấp một cấu trúc đơn giản của một FPGA. Các kiến trúc cơ bản của FPGA bao gồm ba

loại thành phần: các khối logic, định tuyến, và các khối vào ra. Nói chung, FPGA bao gồm một mảng các

khối logic có thể cấu hình được (CLB) có thể được kết nối với nhau cũng như các khối I/O có thể lập

trình được thông qua một số loại kiến trúc định tuyến có thể lập trình được.

Hình 2.1: Kiến trúc chung của FPGA

Các công ty FPGA lớn cũng cung cấp nhiều thành phần dạng thô được nhúng trong các thiết bị lai của

họ theo nhu cầu thị trường. Ví dụ, Xilinx nhúng trong một số họ Virtex bộ xử lý 32-bit RISC PowerPC.

2.1.2. Bộ xử lý tái cấu hình

Trong các FPGA hiện đại, bên cạnh các nguồn tài nguyên mật độ cao có thể cấu hình lại được thông

thường, còn cung cấp cho các nhà thiết kế khả năng thực hiện các bộ vi xử lý có thể cấu hình lại, có các

tính năng theo các thành phần của hiệp định thương mại (COTS). Thiết bị Xilinx FPGA bao gồm hai loại

bộ vi xử lý: các bộ vi xử lý lõi cứng (hard-core) nhúng sẵn (PowerPC) và các bộ vi xử lý lõi mềm dẻo

(soft-core) (MicroBlaze, PicoBlaze). Altera cũng cung cấp hai loại bộ xử lý: bộ vi xử lý lõi cứng dựa trên

ARM (Excalibur) và bộ vi xử lý lõi mềm dẻo (Nios).

2.2. Tái cấu hình linh động

2.2.1. Định nghĩa

Hệ thống có thể thay đổi hành vi của mình theo môi trường hoặc các sự kiện bên ngoài trong thời gian

chạy. Trong số các công ty FPGA, Xilinx được biết đến như một trong các công ty lớn nhất cung cấp họ

Virtex thương mại với khả năng cấu hình lại từng phần.

Các hành vi của FPGA được xác định bởi một bitstream (một luồng bit dữ liệu) cấu hình bao gồm một

chuỗi các tập lệnh và tín hiệu điều khiển bit dữ liệu..

Hình 2.2: Hệ thống dựa trên vi xử lý kiểm soát các tài nguyên có thể cấu hình lại

Hình 2.2 mô tả một cấu trúc điển hình của một hệ thống dựa trên bộ xử lý trong một thiết bị Xilinx

Virtex.

Page 5: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

5

2.2.2. Quy trình thiết kế

Quy trình thiết kế tiêu chuẩn cho cấu hình lại kiểu mô-đun bằng cách sử dụng FPGA Xilinx được dựa

trên công cụ được cung cấp: bộ phát triển nhúng (EDK), môi trường phần mềm tích hợp (ISE) và

PlanAhead, như trong hình 2.3.

Hình 2.3: Quy trình thiết kế tiêu chuẩn cho hệ thống tái cấu hình linh động

2.3. Khả năng chịu lỗi trong kiến trúc tái cấu hình

Các kỹ thuật chịu lỗi có thể được phân thành hai loại: những thay đổi công nghệ của quá trình chế tạo,

và những thay đổi cấu trúc thiết kế của một hệ thống. Khả năng đầu tiên ngụ ý để thiết kế ma trận FPGA

mới bao gồm các thành phần chịu lỗi mà có thể thay thế những cái cũ. Khả năng thứ hai là để bảo vệ các

mô tả mức cao của các mô-đun bằng cách sử dụng một số loại dư thừa.

Mỗi giải pháp có chỗ đứng riêng của mình trên thị trường, cũng như mỗi ứng dụng có những hạn chế

riêng của nó.

2.3.1. Các mô hình lỗi trong kiến trúc tái cấu hình

Việc phân loại của SEE được trình bày trong hình 2.4.

Hình 2.4: Phân loại SEE

SEE có thể có ảnh ở mức hưởng phá hủy hoặc chỉ thoáng qua, theo số lượng năng lượng tích tụ lại bởi

các hạt tích điện và điểm tác động trong thiết bị

2.3.1.1. Ảnh hưởng của sự kiện đơn (SEE)

Sự kiện nhiễu loại đơn (SEU) trong tế bào SRAM:

Hình 2.5: Ảnh hưởng SEU đến trạng thái của tế bào nhớ

Sự kiện ngắt chức năng đơn: (SEFI).

Sự kiện rò dòng đơn: (SEL).

Sự kiện hỏng cổng đơn: SEGR (SEGB).

Page 6: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

6

2.3.1.2. Tích lũy xuống cấp lâu dài

Các hiện tượng xuống cấp về hiệu năng của mạch điện tử được gọi "lão hóa". HCE có thể gây ra các

lỗi thường trú sau khi hoạt động lâu dài, không thể được loại bỏ bằng cách cấu hình lại.

2.3.2. Những ảnh hưởng SEU trong bộ nhớ cấu hình

Thay đổi nội dung một LUT: thay đổi chức năng tổ hợp

Thay đổi cấu hình I/O: đảo hướng I/O

Thay đổi ma trận kết nối: gây ra một kết nối mở hoặc ngắn mạch

Hình 2.6: Các ảnh hưởng SEU trong bộ nhớ cấu hình của Xilinx Virtex

Bit không nhạy cảm:

Bit nhạy cảm:

Bit không ổn định: Bit ổn định:

Hình 2.7: Rối loạn không liên tục Hình 2.8: Rối loạn liên tục

2.4. Các phƣơng án giảm thiểu lỗi cổ điển

Sự quan tâm trong việc áp dụng kỹ thuật chịu lỗi ngày càng tăng.

2.4.1. Mức kiến trúc

Các phương pháp tiếp cận được dựa trên sự dư thừa dự phòng.

2.4.1.1. Dự phòng phần cứng

Hai phương pháp tiếp cận chủ yếu là DWC và TMR.

Hình 2.9: Nhân đôi và so sánh (DWC)

Hình 2.10: Phát hiện lỗi trong ECU của dự án SAPECS

Page 7: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

7

Trong phương án TMR, nó có thể để xác định lỗi dựa trên ba khối tài nguyên và khối xác định chính

(hình 2.11).

Hình 2.11: Dự phòng TMR Hình 2.12: Bộ xác định chính, bảng chân lý

Trong phương án XTMR (hình 2.13), bộ xác định chính được nhân ba và các bộ xác định thiểu số

được thêm vào.

Hình 2.13: Phương án Xilinx TMR—XTMR

2.4.1.2. Dự phòng thời gian

Được sử dụng để phát hiện SET trong logic tổ hợp, trong khi dự phòng phần cứng có thể giúp xác định

một SEU trong logic tuần tự.

Hình 2.14: Phương án dự phòng thời gian cho logic tổ hợp

2.4.1.3. Mã sửa lỗi - ECC

ECC cũng được sử dụng để giảm thiểu SEU trong các mạch tích hợp.

2.4.2. Mức hệ thống

Mô hình của ReCoNets chứa 4 FPGA với 1 bộ xử lý bên trong mỗi FPGA. Nếu một FPGA là bị ngắt

kết nối do một số lỗi, nhiệm vụ của nó sẽ được tự động phân phối vào ba FPGA khác, và hệ thống tiếp tục

hoạt động.

Hình 2.15: Mô hình của ReCoNets về Multi-FPGA

2.4.3. Chiến lược phục hồi bối cảnh

2.4.3.1. Giới thiệu về bối cảnh

Bối cảnh là một tập hợp các thông tin cần thiết để xác định trạng thái của mô-đun tại một thời điểm

nhất định.

Tồn tại nhiều kỹ thuật phục hồi bối cảnh khác nhau vào lúc này để lưu trữ và khôi phục lại bối cảnh.

Page 8: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

8

2.4.3.2. Checkpointing and Rollback [1]

Trong quá trình thực hiện nhiệm vụ, mô-đun được thường xuyên kiểm tra gọi là điểm kiểm soát

(check-point). Sự phục hồi ngữ cảnh trong trường hợp này được gọi là rollback.

Hình 2.16: Rollback checkpoint Hình 2.17: Rollback hệ thống song công

Rollback thường được sử dụng trong các hệ thống song công mà không cần biết về các mô-đun lỗi.

Hình 2.17 miêu tả một kịch bản khi một lỗi xảy ra giữa hai điểm kiểm soát.

2.4.3.3. Rollforward [1]

Hệ thống có khả năng của cô lập hóa các lỗi, rollforward có thể được sử dụng.

Hình 2.18: Phương án Rollforward

2.5. Chiến lƣợc giảm SEU trong các FPGA dựa trên SRAM

Theo loại SEU khác nhau trong bộ nhớ cấu hình, các chiến lược thích hợp được chọn để đối phó với

mỗi SEU cấu hình cụ thể.

2.5.1. Readback

Readback là một hoạt động đọc thông tin cấu hình của bộ nhớ cấu hình.

2.5.2. Tái cấu hình từng phần

Cấu hình lại từng phần để chỉ làm mới các mô-đun có liên quan mà không làm gián đoạn phần còn lại

của mạch.

Cấu hình sạch, Kỹ thuật làm sạch, Tái cấu hình dựa trên mô-đun, Kỹ thuật lát gạch - Tiling. Hình 2.19

mô tả các nguyên lý tiling.

Hình 2.19: Nguyên lý lát gạch - Tiling

Tiling là một trong những kỹ thuật phổ biến nhất để đối phó với sự cố thường trú.

2.5.3. Kết hợp các hướng tiếp cận

Sự kết hợp của vài phương pháp tiếp cận chịu lỗi đã được khai thác.

2.5.4. Tiêm lỗi

Để đánh giá độ tin cậy của một hệ thống, cần thiết để đánh giá hiệu quả các phương án giảm lỗi áp

dụng trong hệ thống. Điều này liên quan đến các thí nghiệm tiêm lỗi để ước lượng các tham số lỗi.

Page 9: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

9

2.6. Tóm tắt và kết luận

Có hai cách để thực hiện các mạch chịu lỗi trong các FPGA dựa trên SRAM, như mô tả trong sơ đồ

của hình 2.20.

Hình 2.20: Quy trình thiết kế giảm SEU và SET

Page 10: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

10

CHƢƠNG 3: CHỊU LỖI TRONG CHIP HỆ THỐNG ĐA NHÂN ĐỘNG (MPSoC)

3.1. Tóm tắt

Chương này trình bày hệ thống trên chip đa xử lý chịu lỗi (MPSoC) dựa trên tái cấu hình linh động

trên toàn bộ nền tảng.

3.2. Giới thiệu

Để đáp ứng những thách thức ngày càng phức tạp, yêu cầu sức mạnh tính toán tăng rất nhanh chóng.

Hiện tại có hai chiến lược chính để đối phó với vấn đề này:

1. Tăng tần số hoạt động.

2. Sử dụng xử lý song song.

Trong chương này sẽ giới thiệu khả năng chịu lỗi của FT-DyMPSoC.

i) Đối phó với các lỗi xảy ra trong các bộ vi xử lý.

ii) Tự động thay đổi các chức năng của bộ xử lý để thích ứng với các sự kiện và các ràng buộc khác

nhau bên ngoài.

3.3. FT-DyMPSoC

FT-DyMPSoC được xây dựng bằng cách sử dụng cấu hình lại từng phần linh động của FPGA Xilinx

Virtex.

Hình 3.1: Cấu trúc FT-DyMPSoC

Hệ thống FT-DyMPSoC (hình 3.1) bao gồm vài số bộ MicroBlaze (P1, P2, P3, vv), SDRAM DDR2,

một bộ điều khiển ngắt (INT) và một bộ nhớ Compact Flash. Các bộ xử lý giao tiếp với nhau như một

mạng lưới bằng cách sử dụng liên kết một chiều nhanh kiểu điểm – điểm (FSL)..

Trong FT-DyMPSoC, phương án phát hiện lỗi được thực hiện ở hai cấp: cấp độ bộ xử lý, cấp độ

MPSoC.

Hình 3.2: Thuật toán giữa các ma trận kết nối

Thuật toán của các ma trận kết nối được sử dụng trong quá trình đồng bộ hóa cho phép phát hiện các

lỗi trong FT-DyMPSoC.

Page 11: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

11

Hình 3.3: Giản đồ thời gian của FT-DyMPSoC

Tùy thuộc vào loại lỗi, kỹ thuật cấu hình lại khác nhau được lựa chọn: cấu hình lại từng phần cho một

lỗi tạm thời hoặc kỹ thuật “lát gạch” cho lỗi thường trú.

3.4. Thay đổi quy trình thiết kế

Luận văn này giới thiệu về sửa đổi quy trình thiết kế này. Sửa đổi đòi hỏi phải định nghĩa các thành

phần Socket và Wrapper.

3.4.1. Thay đổi quy trình thiết kế

Hình 3.7: Quy trình thiết kế cho hệ thống tự động cấu hình lại phức tạp

3.4.2. Socket

Mục tiêu của xây dựng Socket là để giới thiệu sự hiện diện của các thiết bị ngoại vi tồn tại trong hệ

thống con khác.

3.4.3. Wrapper

Tất cả các giao diện kết nối của mỗi mô-đun có thể cấu hình lại được khai báo trong wrapper của nó,

do đó, wrapper của PRM khác nhau cho một PRR phải giống nhau. Wrapper thực tế là một hộp đen được

viết bằng ngôn ngữ HDL.

3.5. Cải tiến FT-DyMPSoC

Hệ thống FT-DyMPSoC sử dụng một NoC thay vì liên kết điểm – điểm. Hệ thống Re2DA sử dụng

một mạng dựa trên NoC được gọi là DRAFT.

3.5.1. Hệ thống Re2DA

FT-DyMPSoC sử dụng DRAFT như kiến trúc truyền thông trung tâm trong các bộ vi xử lý trong một

hệ thống MPSoC.

Page 12: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

12

Hình 3.8: Cấu trúc nội của Re2DA

3.5.2. Nền tảng nhiều FPGA

Hình 3.9: Chịu lỗi trong multi-FPGA Hình 3.10: Chiến lược phục hồi

Hệ thống (hình 3.9) bao gồm bốn FPGA kết nối với nhau bằng cách sử dụng hai mạng Ethernet..

Như hình 3.10 (a), bitstream của mỗi FPGA hiện tại trong bộ nhớ nội của nó và cũng có trong bộ nhớ

nội của FPGA trước đó trong cấu trúc liên kết vòng.

Độ chịu lỗi được duy trì ở hai cấp độ trong hệ thống: mức Intra-FPGA và mức Inter-FPGA.

3.6. Thực hiện chi tiết

Triển khai thực hiện hệ thống FT-DyMPSoC trên Virtex-5 XC5VSXT50T.

Hình 3.11: Tổng quan hệ thống trên FPGA Editor với ứng dụng trên oto

Hệ thống Re2DA: Trong phần thực hiện này, có 4 MicroBlazes và một DRAFT hoạt động ở 100

MHz, trong khi DDR2 hoạt động ở 200 MHz.

Nền tảng đa FPGA: Một nền tảng bao gồm ba Virtex-5 XC5VSXT50T sử dụng giao tiếp ethernet

được thực hiện. Mỗi FPGA có chứa một hệ thống FT-DyMPSoC 4 MicroBlazes

3.7. Kết luận

Trong chương này, trình bày một hệ thống đa xử lý linh động hoàn trong bối cảnh của kiến trúc lại cấu

hình tự động có thể đối phó với những lỗi có thể trong kiến trúc cấu hình lại với chi phí về thời gian thấp.

Một phiên bản FT-DyMPSoC sử dụng DRAFT - Re2DA cũng được trình bày trong chương này.

Nền tảng đa FPGA cung cấp một hiệu suất cao, giải pháp linh hoạt. Chiến lược chịu lỗi đảm bảo hoạt

động chính xác của toàn bộ nền tảng mặc dù xảy ra lỗi..

Tất cả các mô hình hệ thống đề xuất có thể tự động thích ứng với ràng buộc về khả năng chịu lỗi khác

nhau: tỷ lệ lỗi khác nhau, yêu cầu độ tin cậy, hoặc các ứng dụng ràng buộc người sử dụng bằng cách điều

chỉnh khoảng thời gian gián khi đang chạy.

Page 13: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

CHƢƠNG 4: CÁC MÔ HÌNH PHÂN TÍCH

4.1. Tóm tắt

Chương này trình bày một cách tiếp cận phân tích cho FT-DyMPSoC có thể chống lại

SEU. Các mô hình phân tích được giới thiệu để đánh giá hiệu suất, độ tin cậy và tính thương

mại một hệ thống MPSoC chịu lỗi. Ngoài ra, một vài so sánh với các giải pháp chịu lỗi cổ

điển để thấy được lợi thế của hệ thống này.

4.2. Giới thiệu

Khi thiết kế một hệ thống chịu lỗi, việc cân nhắc giữa hiệu suất và độ tin cậy trở thành một

yếu tố đáng kể. Vì vậy, sự cần thiết của một mô hình phân tích để đánh giá.

4.3. Mô hình phân tích

4.3.1. Các định nghĩa chung

Định nghĩa về khẳ năng sẵn sàng của hệ thống, sức mạch tính toán của hệ thống, xác suất

sửa chữa, xác suất lỗi,.. Những định nghĩa trên đây sẽ được áp dụng cho hệ thống FT-

DyMPSoC bằng cách sử dụng FPGA theo COTS.

4.3.2. Mô hình phân tích cho FT-DyMPSoC

Áp dụng phương thức tính toán và phân tích cho FT-DyMPSoC.

4.3.3. Mô hình ứng dụng cho kỹ thuật làm sạch

Áp dụng phương thức tính toán và phân tích cho kỹ thuật làm sạch.

4.4. So sánh và kiểm thử chi tiết

4.4.1. Thực hiện

Chỉ đưa vào các lỗi trong các bộ xử lý linh động, không phải các bộ lọc. SDRAM DDR2

được sử dụng để lưu trữ các bối cảnh bộ xử lý, cho khung đệm video và để thúc đẩy quá trình

cấu hình lại.

Bảng 4.1: Các kết quả thử nghiệm

Bitstream Size Occup. Ratio TReconf

µP1 194 (KBytes) 69% 99 ms

µP1 177 (KBytes) 76% 91 ms

µP1 158 (KBytes) 85% 80 ms

4.4.2. So sánh và kết luận

Trong một hệ thống MPSoC chịu lỗi, đánh đổi luôn luôn tồn tại giữa hiệu suất và độ tin

cậy: đạt được hiệu suất mong muốn đi kèm với mất mát trong độ tin cậy. Mô hình này cho

phép người thiết kế hệ thống để lựa chọn đặc tính hệ thống theo yêu cầu thiết kế trước.

4.5. Mô phỏng và mô hình kiểm tra cho MPSoC chịu lỗi

Phát triển và xác thực hệ thống MPSoC với tính năng chịu lỗi là phức tạp. Tính năng này

phải được lên kế hoạch càng sớm càng tốt trong quy trình thiết kế.

Hình 4.4 cho thấy mô hình có chứa các mô-đun bộ xử lý (µP), kết nối điểm-điểm giữa các

bộ xử lý dựa trên các kênh FIFO, một bộ nhớ chia sẻ (SM) và một bộ công cụ có khả năng

chịu lỗi.

Page 14: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

14

Hình 4.4: Mô hình của MPSoC chịu lỗi

Công cụ chịu lỗi bao gồm hai khối: một bộ điều khiển ngắt và một điều khiển cấu hình lại.

Công cụ này có ba chức năng nội tại: phát hiện lỗi, sửa lỗi và phục hồi bối cảnh sau khi loại

bỏ lỗi.

Hình 4.5: Cơ chế chịu lỗi cho mô hình đề xuất

Mô hình hoạt động của cơ chế chịu lỗi này được đưa ra trong hình 4.5.

Hình 4.6: Thực hiện mô hình của bộ xử lý

Mô hình thực hiện của bộ xử lý được minh họa trong hình 4.6. Bộ điều khiển cấu hình lại

kết nối với tất cả các bộ xử lý và cấu hình lại các bộ vi xử lý bị lỗi.

Page 15: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

15

Việc vận hành của bộ vi xử lý bị lỗi phải dừng lại và chờ đợi các sự kiện được tạo ra bởi

bộ điều khiển cấu hình. Điều này được minh họa trong hình hình 4.6.

4.5.1. Thực hiện các thành phần mô hình

Tất cả các thành phần được mô hình hóa trong SystemC.

4.5.2. Phân tích

Khái niệm xác thực của phương pháp chịu lỗi được thực hiện bằng cách mô tả các lỗi trong

các mô-đun bộ xử lý và sau đó kiểm tra, hệ thống phát hiện và sửa chữa lỗi này hay không.

Loại lỗi là một sự thay đổi bên trong bitstream đại diện của các mô hình bộ xử lý liên quan.

Phân tích để nhận thấy khoảng thời gian ngắt thay đổi và ảnh hưởng đến hiệu suất và khả

năng chỉnh sửa.

Cần phải có một số đánh đổi trong việc lựa chọn các điểm ngắt, để xác suất điều chỉnh và

hiệu suất không có ảnh hưởng tiêu cực. Điều này phụ thuộc vào ứng dụng quan trọng chạy

trên MPSoC.

CHƢƠNG 5: KẾT LUẬN VÀ QUAN ĐIỂM

5.1. Kết luận

Trong luận văn này, nghiên cứu các giải pháp kỹ thuật cao về khả năng chịu lỗi không chỉ

nhắm mục tiêu trong lĩnh vực ô tô. Tổng hợp các giải pháp để thực hiện một MPSoC lỗi chịu

hoàn toàn linh động có thể đối phó với lỗi tạm thời và thường trú trong FPGA. Một số

phương án giảm lỗi được giới thiệu và thực hiện trong hệ thống FT-DyMPSoC: các thuật toán

ma trận kết nối để phát hiện các lỗi, cấu hình lại từng phần và kỹ thuật lát gạch để sửa lỗi, và

rollback kết hợp với checkpointing để phục hồi bối cảnh phần mềm hệ thống sau khi xảy ra

lỗi.

Các phương án và thay đổi quy trình thiết kế tiêu chuẩn để tạo điều kiện và tốc độ xây

dựng FT-DyMPSoC cũng được giới thiệu. Khái niệm về socket và wrapper được thêm vào để

dễ dàng sửa đổi thiết kế trên thiết kế ban đầu.

Mô hình phân tích được giới thiệu để đánh giá cân nhắc lựa chọn của các chương trình

chịu lỗi. Sử dụng mô hình này, đánh giá hệ thống FT-DyMPSoC so với kỹ thuật làm sạch.

Việc giảm hiệu suất một chút có thể đạt được thành công đáng kể về độ tin cậy. Mô hình này

có áp dụng cho bất kỳ chương trình chịu lỗi nào bằng cách thêm các thông số thích hợp để mô

hình hóa.

5.2. Quan điểm

Trong luận văn, các phương án đang có được tổng hợp và giới thiệu. Có nhiều cơ sở để

thực hiện các công trình trong tương lai nhằm tăng cường các phương án tổng hợp này.

Mô hình phân tích được giới thiệu cung cấp một phương pháp đánh giá nhanh chóng để

kiểm tra xác minh cho các phương án giảm lỗi. Tuy nhiên, tính chính xác của mô hình này

vẫn cần phải tiếp tục được xác minh và cần phải có kết quả khác nhau từ các chiến dịch tiêm

lỗi khác nhau về các phương án giảm lỗi khác.

Một thiết kế FPGA mới với nguồn tài nguyên tự động cấu hình lại, với một ma trận FPGA,

chúng ta có thể thấy một bộ xử lý DSP, một bộ xử lý lõi cứng như PowerPC hoặc ARM.

Trong ma trận thiết bị mới này, tất cả các vấn đề trong luận văn có thể được nhanh chóng

được triển khai. Hơn nữa, nhờ vào sự đa dạng các thành phần, lỗi sẽ xuất hiện chỉ trong một

mô-đun vì giai đoạn phát triển của mỗi mô-đun được hoàn toàn tách rời.

Page 16: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

16

Nền tảng phần cứng được phát triển nhanh chóng từ một bộ xử lý duy nhất thành hệ thống

đa bộ xử lý để đáp ứng yêu cầu của khách hàng. Xu hướng này bắt buộc các chức năng cụ thể

của người dùng cuối phải được tích hợp vào hệ thống như phần mềm hơn là phần cứng. Từ đó

cho thấy các chức năng phần mềm thêm vào tùy biến giúp thị trường phần mềm nhúng trong

lĩnh vực ô tô, cũng như các lĩnh vực khác tăng trưởng theo cấp số nhân. Do đó, nền tảng phần

mềm nhất định phải phù hợp với tiêu chuẩn công nghiệp để giúp làm giảm bớt sự hội nhập

của nền tảng phần cứng mới. Autosar đã được tạo ra để phát triển một chuẩn công nghiệp mở

cho các kiến trúc phần mềm ô tô. Autosar cung cấp một cơ sở hạ tầng phần mềm phổ biến dựa

trên các giao thức tiêu chuẩn hóa cho các tầng khác nhau để đạt được các mục tiêu kỹ thuật

của mô đun về khả năng mở rộng, chuyển giao, và có thể dùng lại chức năng,. Trong Autosar,

phát triển phần mềm được liên kết với kiến trúc phần cứng (ECU) để cho phép tái sử dụng và

tái lập các chức năng của xe ô tô. Do đó, có ràng buộc trong việc thiết kế một hệ thống điện tử

ô tô là phải tuân thủ với tiêu chuẩn Autosar.

References

Tiếng Anh

1. A. Avizienis, J.C. Laprie, B. Randell, and C. Landwehr. (2004), "Basic Concepts and

Taxonomy Of Dependable and Secure Computing", IEEE Transactions on Dependable

and Secure Computing, 1(1): 11–33, ISSN 1545-5971.

2. A. Grama. (2003), Introduction to Parallel Computing, Addison-Wesley.

3. A. Kanamaru, H. Kawai, Y. Yamaguchi, and M. Yasunaga. (2009), "Tile-Based Fault

Tol-erant Approach Using Partial Reconfiguration", In Proc. Int. Workshop on Recon-

figurable Computing: Architectures, Tools and Applications, LNCS, volume 5453, pp

293–299.

4. A. Klimm, L. Braun, and J. Becker. (2008), "An Adaptive and Scalable Multiprocessor

System for Xilinx FPGAs Using Minimal Sized Processor Cores", In IEEE International

Symposium on Parallel and Distributed Processing.

5. A. Montone, V. Rana, M.D. Santambrogio, D. Sciuto, and P. di Milano. (2008),

"HARPE: A Harvard-based Processing Element Tailored for Partial Dynamic

Reconfigurable Architectures", In IEEE International Symposium on Parallel and

Distributed Processing.

6. A.A.M. Bsoul, N. Manjikian, and L. Shang. (2010), "Reliability-and Process Variation-

Aware Placement for FPGAs", In Design, Automation and Test in Europe.

7. Actel Inc. (2010), RTAX-S/SL and RTAX-DSP Radiation-Tolerant FPGAs.

8. AD Houghton. (1997), The Engineer’s Error Coding Handbook, Chapman & Hall.

9. Altera Corporation. (2002), Excalibur Devices Hardware Reference Manual, (V3.1).

10. Altera Corporation. (2005), Nios II Processor Reference Handbook.

11. Atmel. (2007), Secured Architecture and Protocols for Enhanced Car Safety, (SAPECS).

12. Austin Lesea. (2009), Continuing Experiments of Atmospheric Neutron Effects on Deep

Submicron Integrated Circuits, (WP286), Technical report, Xilinx Inc, URL

www.xilinx.com/support/documentation/white_papers/wp286.pdf.

13. AUTOSAR GbR. "AUTomotive Open System Architecture", URL http: //www.

autosar.org/.

Page 17: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

17

14. B. Dutton and C. Stroud. (2009), "Single Event Upset Detection and Correction in

Virtex-4 and Virtex-5 FPGAs", In Int. Conf. on Computers and Their Applications, pp

57–62.

15. C. Amicucci, et al. (2006), "SyCERS: A SystemC Design Exploration Framework for

SoC Reconfigurable Architecture", In ERSA’06, pp 63–69.

16. C. Haubelt, D. Koch, and J. Teich. (2004), "Basic OS Support for Distributed Reconfig-

urable Hardware", In Computer Systems: Third and Fourth International Workshops,

SAMOS 2003 and SAMOS 2004.

17. C. Pilotto, J.R. Azambuja, and F.L. Kastensmidt. (2008), "Synchronizing Triple Modular

Redundant Designs in Dynamic Partial Reconfiguration Applications", In The 21st

Annual Symposium on Integrated Circuits and System Design, pp 199–204.

18. Carl Carmichael, Michael Caffrey, Anthony Salazar. (2000), Correcting Single-Event

Upsets Through Virtex Partial Configuration, Xilinx(XAPP216 v1.0), Los Alamos

National Laboratories, http: //www.xilinx.com/support/documentation/

application_notes/xapp216.pdf.

19. D. Gohringer, M. Hubner, T. Perschke, and J Becker. (2008), "New Dimensions for

Multi-processor Architectures: On Demand Heterogeneity, Infrastructure and

Performance Through Reconfigurability-The RAMPSoC Approach", In International

Conference on Field Programmable Logic and Applications, pp 495–498.

20. Dhiraj. K. Pradhan and Nitin. H. Vaidya. (1997), "Brief Contributions: Roll-Forward and

Rollback Recovery: Performance-Reliability Trade-Off", IEEE Transactions on

Computer, 46(3), pp 372–378.

21. E. Salminen, A. Kulmala, and T. D. Hamalainen. (2008), Survey of network-on-chip pro-

posals, OCP-IP White Paper, http: //www.ocpip.org/whitepapers.php.

22. Exida. (2006), "IEC 61508 Overview Report", Technical report, URL http:

//www.iec.ch/cgi-bin/procgi.pl/www/iecwww.p?wwwlang=e&wwwprog=seabox

1.p&progdb=db1&seabox1=61508.

23. F. Abate et al. (2009), "New Techniques for Improving the Performance of the Lockstep

Ar-chitecture for SEEs Mitigation in FPGA Embedded Processors", IEEE Transactions

on Nuclear Science, 56(4): 1992–2000.

24. F. Lima, L. Carro, and R. Reis. (2003), "Designing Fault Tolerant Systems into SRAM-

based FPGAs", In Design Automation Conference, pp 650–655. ACM New York, NY,

USA.

25. G, Beltrame, et al. (2008), "High-Level Modeling and Exploration of Reconfigurable

MP-SoCs". In AHS-2008, pp 330–337.

26. G.E. Moore. (1975), "Progress in Digital Integrated Electronics", In Digest of the 1975

International Electron Devices Meeting, pp 11–13, New York. Bibliography 115.

27. H. Castro, A.A. Coelho, and R.J. Silveira. (2008), "Fault-Tolerance in FPGA’s through

CRC Voting", In The 21st Annual Symposium on Integrated Circuits and System Design,

pp 188–192. ACM New York, NY, USA.

28. H. Guzmán-Miranda, M.A. Aguirre, and J. Tombs. (2009), "Noninvasive Fault

Classification, Robustness and Recovery Time Measurement in Microprocessor-Type

Page 18: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

18

Architectures Subjected to Radiation-Induced Errors", IEEE Transactions on

Instrumentation and Measurement, 58(5).

29. H. Zheng, L. Fan, and S. Yue. (2008), "FITVS: A FPGA-Based Emulation Tool For

High-Efficiency Hardness Evaluation", In IEEE International Symposium on Parallel

and Distributed Processing with Applications, pp 525–531. IEEE Computer Society.

30. H.C. Hsieh, W. Carter, J. Ja, E. Cheung, S. Schreifels, C. Erickson, P. Freidin, L. Tinkey,

and R. Kanazawa. (1990), "Third-generation Architecture Boosts Speed and Density of

Field-Programmable Gate Arrays", In IEEE Custom Integrated Circuits Conference, pp

31.2.1–31.2.7.

31. H-M. Pham, S. Pillement, and D. Demigny. (2009), "A Fault-Tolerant Layer For

Dynamically Reconfigurable Multi-Processor System-on-Chip", In International

Conference on ReConFigurable Computing and FPGAs, pp 284–289, Cancun, Mexico.

32. IBM. Instruction Set Simulator User’s Guide, (v1.3).

33. J.C. Laprie, J. Arlat, J.P. Blanquart, A. Costes, Y. Crouzet, Y. Deswarte, J.C. Fabre, H.

Guillermain, M. Kaâniche, K. Kanoun, et al. (1995), Guide de la sûreté de

fonctionnement, Cépaduès, ISBN 2854283414.

34. K. Kyriakoulakos and D. Pnevmatikatos. (2009), "A Novel SRAM-Based FPGA

Architecture for Efficient TMR-Processor Fault Tolerance Support", In International

Conference on Field Programmable Logic and Applications.

35. LightWeight IP, LightWeight IP, http: //savannah.nongnu.org/projects/lwip.

36. Ludovic Devaux, Sana Ben Sassi, Sebastien Pillement, Daniel Chillet, and Didier

Demigny. (2010), "Flexible Interconnection Network for Dynamically and Partially

Recon-figurable Architectures", International Journal of Reconfigurable Computing,

2010 (390545): 10.1155/2010/390545.

37. M. Lanuzza, P. Zicari, F. Frustaci, S. Perri, and P. Corsonello. (2009), "An Efficient and

Low-Cost Design Methodology to Improve SRAM-Based FPGA Robustness in Space

and Avionics Applications" In Proc. Int. Workshop on Reconfigurable Computing:

Architectures, Tools and Applications, LNCS, volume 5453, pp 74–84.

38. M. Monchiero, et al. (2008), "A Modular Approach to Model Heterogeneous MPSoC at

Cycle Level", In DSD’08, pp 158–164.

39. M. Nicolaidis. (1999), "Time Redundancy Based Soft-Error Tolerance to Rescue

Nanometer Technologies", In IEEE VLSI Test Symposium. IEEE Computer Society

Washington, DC, USA.

40. NASA. Radiation Effects on Digital Systems, URL http://radhome.gsfc.nasa.gov/

top.htm.

41. P. Tanguy, F. Nouvel, and P. Maziéro. (2009), "Power Line Communication Standards

for in-Vehicle Networks", In Proceedings of the International Conference on ITS

Telecom-munication.

42. RC Baumann. (2005), "Single-Event Effects in Advanced CMOS Technology", In IEEE

Nuclear and Space Radiation Effects.

Page 19: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

19

43. S. Mahapatra, R. Rao, B. Cheng, M. Khare, C.D. Parikh, JCS Woo, and J. Vasi. (2001),

"Performance and Hot-Carrier Reliability of 100 nm Channel Length Jet Vapor De-

posited Si3N4 MNSFETs", IEEE Transactions on Electron Devices, 48(4): 679–84.

44. S. Srinivasan, P. Mangalagiri, Y. Xie, N. Vijaykrishnan, and K. Sarpatwari. (2006),

"FLAW: FPGA Lifetime Awareness", In The 43rd Annual Design Automation

Conference, pp 635. ACM.

45. S. Tanoue, T. Ishida, Y. Ichinomiya, M. Amagasaki, M. Kuga, and T. Sueyoshi. (2009),

"A Novel States Recovery Technique for the TMR Softcore Processors", In Proc. Int.

Conf. on Field Programmable Logic and Applications, pp 543–546.

46. S. Trimberger. (1995), "Effects of FPGA Architecture on FPGA Routing", In The 32nd

annual ACM/IEEE Design Automation Conference, pp 574–578.

47. S. Xu, et al. (2008), "A Multi-MicroBlaze Based SoC System: From SystemC Modeling

to FPGA Prototyping", In RSP’08, pp 121–127.

48. S. Young. (2002), Maximizing Silicon ROI: The Cost of Failure and Success, Nassda

White Paper WP020522-1A

49. S.Y. Yu and E.J. McCluskey. (2001), "Permanent Fault Repair For FPGAs With Limited

Redundant Area", In IEEE International Symposium on Defect and Fault Tolerance in

VLSI Systems, pp 125–133.

50. T. Bjerregaard and S. Mahadevan. (2006), A survey of research and practices of network-

on-chip, ACM Computing Surveys (CSUR), 38: 1–51.

51. TRW Automotive, http: //ir.trw.com/.

52. University of Erlangen-Nuremberg, Project ReCoNets, URL http: //www.reconets.de/.

53. W.W. Peterson and E.J. Weldon. (1972), Error-Correcting Codes.

54. Wei-Je Huang and Edward J. McCluskey. (2001), "Column-Based Precompiled

Configuration Techniques for FPGA Fault Tolerance", In Proc. Annu. Int. IEEE Symp.

Field-Programmable Custom Computing Machines, pp 137–146.

55. Xilinx, Inc. (2009), Virtex-5 FPGA Configuration User Guide UG191 (v3.6), URL:

www.xilinx.com/support/documentation/user_guides/ug191.pdf.

56. Xilinx, Inc. (2004), PowerPC 405 Processor Block Reference Guide, URL

www.xilinx.com/support/documentation/user_guides/ug018.pdf.

57. Xilinx, Inc. (2009), MicroBlaze Processor Reference Guide UG081 (v10.3), URL http:

//www.xilinx.com/support/documentation/sw_manuals/mb_ref_guide.pdf.

58. Xilinx, Inc. (2010), PicoBlaze 8-bit Embedded Microcontroller User Guide, UG129

(v2.0).

59. Xilinx, Inc. (2002), Two Flows for Partial Reconfiguration: Module Based or Small Bit

Manipulations, (XAPP290).

60. Xilinx, Inc. (2008), Early Access Partial Reconfiguration User Guide, UG208.

61. Xilinx, Inc. (2009), Virtex-4 FPGA Configuration User Guide, UG071 (v1.11).

62. Xilinx, Inc. (2010), Virtex-6 FPGA Configuration User Guide, UG360 (v3.1).

63. Xilinx, Inc. (2009), Embedded System Tools Reference Guide, UG111.

64. Xilinx, Inc. http: //www.xilinx.com/.

Page 20: Cấu hình lại phần cứng trong kiến trúc hệ thống nhúng như ...repository.vnu.edu.vn/bitstream/VNU_123/8048/1/00050001621.pdf · Việc sử dụng máy tính có

20

65. Xilinx, Inc. (2009), Xilinx PlanAhead User Guide, (UG632 v11.4), URL http:

//www.xilinx.com/support/documentation/sw_manuals/xilinx11/cgd.pdf.

66. Xilinx, Inc. (2010), Radiation-Hardened, Space-Grade Virtex-5QV Family Overview,

DS192 (v1.1).

67. Xilinx, Inc. (2007), PPC405 Lockstep System on ML310, (XAPP564 v1.0.2), URL:

http://www.xilinx.com/support/documentation/application_notes/xapp564.pdf.

68. Xilinx, Inc. (2005), Virtex FPGA Series Configuration and Readback, XAPP138 (v2.8).

69. Xilinx, Inc. (2009), SEU Strategies for Virtex-5 Devices, (XAPP864), URL http:

//www.xilinx.com/support/documentation/application_notes/xapp864.pdf.

70. Xilinx, Inc. JBits 3.0 SDK, URL www.xilinx.com/labs/projects/jbits/.

71. Xilinx, Inc. (2008), Single-Event Upset Mitigation Selection Guide, (XAPP987 v1.0),

URL http://www.xilinx.com/support/documentation/application_notes/xapp 987. pdf.

72. Xilinx, Inc. (2010), Multi-Port Memory Controller, (MPMC), (DS643 v6.00.a).

73. Xilinx, Inc. (2007), Fast Simplex Link (FSL) Bus, (DS449), URL http:

//www.xilinx.com/support/documentation/ip_documentation/fsl_v20.pdf.

74. Xilinx, Inc. (2009), Constraints Guide (UG625 v11.4), URL http:

//www.xilinx.com/support/documentation/sw_manuals/xilinx11/cgd.pdf.

75. Xilinx, Inc. (2010), LogiCORE IP XPS Timer/Counter (DS573 v1.02a).

76. Xilinx, Inc. (2009), Device Reliability Report (UG116).

77. Y. Ichinomiya, S. Tanoue, M. Amagasaki, M. Iida, M. Kuga, and T. Sueyoshi. (2010),

"Improving the Robustness of a Softcore Processor against SEUs by Using TMR and

Partial Reconfiguration", In IEEE Annual International Symposium on Field-

Programmable Custom Computing Machines, pp 47–54.

78. http://www.insa-rennes.fr/ietr-cifaer.