Đồ Án Thiết kế Risc Microcontroller dùng VHDL

Thảo luận trong 'Điện - Điện Tử' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    Lời mở đầu
    Hiện nay, công nghệ vi mạch phát triển rất nhanh và tạo ra rất nhiều hướng phát
    triển mới cho tương lai. Điển hình cho sự phát triển nay là xuất hiện của các IC logic lập
    trình được như PLA, FPGA, ASIC các IC nay có mức độ tích hợp ngày càng cao(có thể
    chứa trên 1 triệu Transitor đối với loại VLSI), các ứng dụng của nó cũng trở nên phổ biến
    hơn.Do mức độ tích hợp của các IC cao dẫn theo sự phức tạp trong cấu trúc của nó,chinh
    vì vây yêu cầu đặt ra là cần có 1 công cụ vạn năng để hỗ trợ cho việc thiết kế số. Từ đó dẫn
    đến sự ra đời của các ngôn ngữ mô tả phần cứng như VHDL,Verilog .Nó giúp cho các
    nhà thiết kế dễ dàng hơn trong việc thiết kế hệ thống số dựa trên các IC lập trình được này.
    Em chọn đề tài “Thiết kế Risc Microcontroller dùng VHDL” với mục đích là tìm
    hiểu về các IC Logic lập trình được, cách thức lập trình mô tả phần cứng trên ngôn ngữ
    VHDL, và cấu trúc, họat động của 1 MCU dạng RISC.
    Em xin chân thành cảm ơn các thầy cô trong trường Đại học Bách khoa TPHCM
    nói chung và các thầy cô trong khoa Điện- Điện tử nói riêng đã truyền dạy những kinh
    nghiệm quý báu và giúp đở em trong suốt quá trình học tập.
    Đặc biệt, em xin gửi lời cảm ơn chân thành đến thầy HỒ TRUNG MỸ người đã tận tình
    giúp đở em hoàn thành đồ án này.
    Thiết kế RISC microcontroller

    Mục lục
    trang
    I > Giới Thiệu đề tài 4
    II> KHÁI QUÁT VỀ RISC VÀ CISC 5
    III> TẬP LỆNH 6
    IV > PIPELINE PROCESSING 12
    V> SƠ ĐỒ KHỐI CỦA THIẾT KẾ RISC 14
    VI> THIẾT KẾ ĐƯỜNG DỮ LIỆU (DATAPATH) 16
    VII> THIẾT KẾ ĐƠN VỊ ĐIỀU KHIỂN (CONTROL UNIT) 25
    VIII> CHƯƠNG TRÌNH VHDL VÀ KẾT QUẢ MÔ PHỎNG 28

    I> GIỚI THIỆU ĐỀ TÀI
    1. Mục đích cùa đồ án:
    Tìm hiểu cấu trúc, và hoạt động của 1 RISC Microcontroller cơ bản,
    Thiết kế và dùng ngôn ngữ VHDL để mô tả RISC MCU.
    2. Phạm vi thiết kế của đồ án:
    Thiết kế chỉ thực hiện các chức năng cơ bản của 1 MCU như: thưc hiện các
    phép tóan cộng trừ, logic, dịch, di chuyển dữ liệu, rẽ nhánh không điều kiện và có điều kiện, gọi
    hàm, và các lệnh tác động lên bit.
    Thiết kế dựa trên tập lệnh của Atmel AVR AT90S1200. Bằng cách này,
    Thiết kế có thể sử dụng các công cụ assempler, simulater do Atmel cung cấp.
    Do giới hạn của đề tài nên RISC MCU không hỗ trợ ngắt ngoài, Timer, Port
    IO 2 chiều, analog comparator, điện trở kéo lên bên trong, watchdog reset . như AVR
    AT90s1200.
    Thiết kế sử dụng phần mềm MAX + plus II để thực hiện và mô phỏng thiết
    kế. MAX + plus II là phần mềm do ALTERA phát triển. Nó có một số Modul quan trọng
    cho thiết kế, ví dụ như Compiler, Simulater, Wavefrom editor, và Programmer .
    Thiết kế RISC microcontroller
    II> KHÁI QUÁT VỀ RISC VÀ CISC
    1. Comples Instruction Set Computer (CISC)
    Những năm trước đây, Tập lệnh của máy tính có số lượng lệnh ít và đơn giản.
    Với sự phát triển của kỹ thuật và yêu cầu của các ứng dụng khác nhau, tập lệnh của máy tính ngày
    càng tăng về số lượng lẫn độ phức tạp( sử dụng nhiều loại dữ liệu và nhiều mode định địa chỉ).
    Một máy tính có tập lệnh lớn và phức tạp được gọi là CISC(Complex Intrucstion Set Computer).
    Đặc tính cơ bản của cấu trúc CISC:
    - Có số lượng lệnh rất nhiều, thông thường từ 100 tới 250 lệnh.
    - Một số lệnh thực hiện các chức năng đặc biệt và thường không được sử dụng.
    - Rất nhiều chế độ định địa chỉ, thường có khoảng từ 5->20 chế độ định địa chỉ.
    - Cấu trúc lệnh không cố định và dài, thường từ 2 tới 6 bytes.
    - Lệnh có tóan hạng chứa trong ô nhớ.
    2. Reduce Instruction Set Computer (RISC)
    Vào đầu năm 1980, trong các thống kế của hệ thống máy tính, người ta thấy
    hầu hết 80% số lệnh trong tập lệnh ít được sử dụng. Vì vậy để tăng hiệu quả cho ứng dụng và việc
    thiết kế, người ta đặt ra vấn đề về một máy tính có tập lệnh được rút gọn và đơn giản được gọi là
    RISC (Reduce Intruction Set Computer).
    Đặc tính cơ bản của cấu trúc RISC:
    - Chu kỳ lệnh được chia thành 2 chu kỳ: tìm nạp lệnh và thực thi lệnh.
    - Lệnh được thực thi trong 1 chu kỳ xung clock.
    - Lệnh có chiều dài cố định(16 bit hay 32 bit), và có định dạng dễ giải mã.
    - Tập lệnh có số lượng lệnh ít.
    - Ít chế độ định địa chỉ.
    - Hạn chế lệnh truy xuất bộ nhớ, chỉ truy xuất thông qua con trỏ dữ liệu.
    - Tất cả các lệnh được thự hiện thông qua các thanh ghi của CPU.
    - Thường sử dụng mạch logic để điều khiển thực thi lệnh hơn là sử dụng vi chương
    trình (microprogram) như CISC.
    - Số lượng thanh ghi đa năng khá nhiều (ít nhất là 32 Register).
    Thiết kế RISC microcontroller
    III> TẬP LỆNH:
    1. Tóm tắt Tập lệnh
    Thiết kế dựa trên tập lệnh của Atmel AVR AT90S1200. Bằng cách này,
    Thiết kế có thể sử dụng các công cụ assempler, simulater do Atmel cung cấp.
    Tập lệnh được chia thành 4 nhóm lệnhdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" class="mceSmilieSprite mceSmilie3" alt=":(" title="Frown :(">xem bảng 3.1)
    - Nhóm lệnh số học và logic: gồm các lệnh tính tóan số học và logic
    - Nhóm lệnh rẽ nhánh: gồm các lệnh nhảy không điều kiện, nhảy có điều
    kiện theo các cờ trạng thái, lệnh gọi hàm và Return.
    - Nhóm lệnh truyền dữ liệu: gồm các lệnh di chuyển dữ liệu giữa các thanh
    ghi, ô nhớ RAM và Port IO bên ngoài.
    - Nhóm lệnh về bit: gồm các lệnh bit như xóa, đặt bit, lệnh dịch xoay .
    2. Chế độ định Địa chỉ (Addressing Modes):
    Theo thiết kế thì RISC có 6 chế độ định địa chỉ. RA, RB được xem như là
    tóan hạng đích và toán hạng nguồn.
    2.1 Định địa chỉ trực tiếp thanh ghi đơn:
    Lệnh có một toán hạng là RA: vừa là thanh ghi nguồn vừa là thanh ghi đích.
    Ví dụ như lệnh: dịch, xoay, set bit .
    2.2 Định địa chỉ trực tiếp thanh ghi đôi:
    Lệnh có hai toán hạng là RA và RB. Sau khi tính tóan kết quả được ghi vào
    RA.Ví dụ như lệnh tóan học và logic
    2.3 Định địa chỉ I/O trực tiếp :
    Toán hạng là I/O register. Địa chỉ được chứa trong 6 bit trong từ lệnh. Cách
    định địa chỉ này được sử dụng trong lệnh IN và OUT.
    2.4 Định địa chỉ dữ liệu gián tiếp:
    Tóan hạng là ô nhớ Ram có địa chỉ chứa trong thanh ghi Z. Cách định địa chỉ
    được sử dụng trong lệnh LD và St.
    2.5 Định địa chỉ tương đối bộ nhớ chương trình:
    Cách định địa chỉ này được sử dụng trong lệnh RJMP, RCALL. Địa chỉ lệnh
    kế được tính bằng PC + Offset. Offset được chứa trong từ lệnh.
    2.6 Định địa chỉ tức thời:
    Tóan hạng là hằng số 8 bit đựơc cho trong từ lệnh
     

    Các file đính kèm:

Đang tải...