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

THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA ppt

5 475 4
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 365,65 KB

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

Nội dung

Nguyễn Thị Khánh Hồng Khoa Điện, Trường Cao đẳng Công Nghệ TÓM TẮT Mục đích chính của đề tài này là nghiên cứu việc lập trình cho FPGA dựa trên các ngôn ngữ mô tả phần cứng HDL, kiểm

Trang 1

THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA

DESIGN AND IMPLEMENTATION SRAM IP CORE

ON EMBEDDED FPGA SYSTEM

SVTH: Nguyễn Tiến Chuẩn, Phan Tuấn Vĩ

Lớp 07ĐT2, 07ĐT1, Khoa Điện, Trường Cao đẳng Công Nghệ

GVHD: ThS Nguyễn Thị Khánh Hồng

Khoa Điện, Trường Cao đẳng Công Nghệ

TÓM TẮT

Mục đích chính của đề tài này là nghiên cứu việc lập trình cho FPGA dựa trên các ngôn ngữ mô tả phần cứng (HDL), kiểm nghiệm kết quả dựa trên các công cụ mô phỏng (Simulation Tools),và cuối cùng là cho thi hành trên Kit thực hành FPGA Spartan3 của hãng Xilinx,.Cụ thể ở đề tài là xây dựng một bộ điều khiển SRAM (SRAM Controller) trên nền FPGA, thực thi việc giao tiếp giữa SRAM với hệ thống Vi xử lý Microblaze

ABSTRACT

The main purpose of this subject researchs the program for FPGA based on Hardware Decription Language (HDL), uses the simulation tools for testing the results, and implement them

on FPGA Spartan 3 kit come from Xilinx company Especially, the topic sucessfully designs the SRAM controller based on FPGA, implements the interfacing SRAM with Microblaze system

1 Đặt vấn đề

Một kiểu bộ nhớ thường được sử dụng đó là RAM tĩnh không đồng bộ(SRAM) Không giống như các thanh ghi, nơi mà bên trong dữ liệu được lấy mẫu và lưu trữ tại một sườn của tín hiệu đồng hồ (clock signal), việc truy cập dữ liệu từ SRAM không đồng bộ trở nên phức tạp hơn Một công đoạn đọc hoặc ghi yêu cầu: dữ liệu (data), địa chỉ (address) ,

và các tín hiệu điều khiển (control signals) phải được đặc tả một cách cụ thể, và các tín hiệu này phải được ổn định trong những khoảng thời gian nhất định của thao tác đọc hoặc viết dữ liệu Chúng ta thường sử dụng một bộ điều khiển bộ nhớ (memory controller) như một bộ giao tiếp (interfacer), nơi mà các lệnh được lấy ra từ hệ thống chính đồng bộ (main system synchronously) và sau đó phát ra các tín hiệu điều khiển với thời gian hợp lí để truy cập SRAM Bộ điều khiển bao bọc

lấy hệ thống chính từ các thời điểm

chi tiết và làm cho việc truy cập bộ

nhớ xuất hiện giống như một thao

tác đồng bộ

2 Sơ đồ khối và các tín hiệu I/O

của SRAM IS61LV25616AL

Kit thực hành FPGA

Spartan3 của hãng Xilinx có chứa

2 SRAM 256Kx16 Mỗi SRAM có bus địa chỉ (ad) 18 bit, bus dữ liệu 2 hướng (dio) 16 bit,

Hình 1 Sơ đồ khối chức năng

Trang 2

và 5 tín hiệu điều khiển

Bus dữ liệu được chia thành 2 kiểu : byte cao (I/O 8-I/O 15), và byte thấp (I/O 0-I/O 7), mà có thể được truy cập cá nhân riêng biệt Các tín hiệu điều khiển gồm :

ce (chip enable):kích hoạt hay không kích hoạt chip (SRAM)

we(write enable):kích hoạt hay không kích hoạt thao tác ghi dữ liệu vào SRAM oe(output enable):kích hoạt hay không kích hoạt thao tác xuất dữ liệu từ SRAM ub(upper byte enable):kích hoạt hay không kích hoạt chế độ làm việc với byte cao của SRAM

lb(lower byte enable):kích hoạt hay không kích hoạt chế độ làm việc với byte thấp của SRAM

Tất cả các tín hiệu đều tích cực ở mức thấp (mức 0)

3 Thiết kế một bộ điều khiển bộ nhớ cơ bản (Basic Memory Controler)

3.1 Mô hình giao tiếp giữa hệ thống với SRAM

addr data_f data_s_r

VXL MICROBLAZE

Memory

data_s_ur mem R_W ready

add dio we oe

0 0 0

Hình 2.Mô hình giao tiếp giữa hệ thống và SRAM thông qua bộ điều khiển (SRAM Controler)

Bộ điều khiển bộ nhớ cơ bản cung cấp một “vỏ bọc đồng bộ “ bên ngoài SRAM Khi hệ thống chính muốn truy cập vào bộ nhớ,nó sẽ đặt địa chỉ,hoặc địa chỉ và dữ liệu lên trên các Bus tương ứng

và kích hoạt lệnh Tại

mỗi sườn lên của tín

hiệu đồng hồ,tất cả các

tín hiệu được lấy mẫu

bởi bộ điều khiển bộ

nhớ,và các công đoạn

yêu cầu được thực hiện

một cách phù hợp

3.2 Sơ đồ khối đường

dẫn dữ liệu

Đường dẫn dữ

liệu (Data Path) của bộ

điều khiển SRAM bao

gồm một thanh ghi địa

Trang 3

liệu Vì rằng Bus dữ liệu (Data Bus) thực hiện với dữ liệu 2 hướng, nên việc sử dụng bộ đệm 3 trạng thái (Tri-State Buffer) là cần thiết

4 Xây dựng chương trình và kiểm tra mô phỏng

4.1 Xây dựng chương trình dựa trên lưu đồ thuật toán

Trong đề tài này,bản thiết kế bộ điều khiển SRAM được xây dựng theo lưu đồ thuật toán như trong hình 4 Chúng ta có thể khái quát các công đoạn đọc và viết dữ liệu vào SRAM như sau:

 Công đoạn ghi (viết) dữ liệu lên SRAM

 Ngắt kích hoạt tín hiệu tại chân oe trong suốt quá trình thực hiện

 Đặt địa chỉ lên đường bus addr, và dữ liệu lên bus dio

 Kích hoạt tín hiệu tại chân we, tín hiệu này phải thực hiện đồng bộ với công

việc đặt địa chỉ và dữ liệu lên các bus

thấp

 Ngắt kích hoạt tín hiệu we,dữ liệu lúc này sẽ được chốt lên sram tại mức

chuyển sườn của tín hiệu we

 Tháo bỏ dữ liệu ra khỏi bus dio

 Công đoạn đọc dữ liệu từ SRAM

 Ngắt kích hoạt tín hiệu we trong quá trính thực hiện

 Đặt địa chỉ lên đường bus addr,và kích hoạt tín hiệu oe

 Ngắt kích hoạt tín hiệu oe,dữ liệu đọc ra từ bus dio

Ready=1

Mem==1

R_W==1

reg_addr <-addr reg_addr <-addr

reg_data_f <- data_f

oe=0

oe= 0 reg_data_s=dio

we= 0 tri_buf=0

tri_buf=0

Rd 1

Wr 1

Hình4 Lưu đồ thuật toán bộ điều khiển SRAM (SRAM Controler)

Trang 4

Các khoảng thời gian TAA (address access time),và TPWE (we pulse width time) thực tế được tra trong datasheet của SRAM IS61LV25616AL

4.2 Kết quả chạy mô phỏng

Sử dụng phần mềm Model Sim V6.4 để chạy mô phỏng bộ điều khiển,dựa trên chương trình testbench được viết bằng cách điều khiển từng công đoạn một tại các thời điểm làm việc khác nhau của SRAM

Hình 5 Kết quả chạy mô phỏng trên phần mềm ModelSim

Ready=1

Mem==1

R_W==1

reg_addr <-addr reg_addr <-addr

reg_data_f <- data_f

tri_buf=0

idle

reg_addr <-addr reg_addr <-addr reg_addr <-addr

reg_data_f <- data_f

reg_addr <-addr reg_data_f <- data_f

T

T

F

F

Hình 6 Lưu đồ thuật toán phương án thiết kế tối ưu

Trang 5

5 Kết luận

Với bản thiết kế bộ điều khiển SRAM này,chúng em đã định hướng thiết kế theo một giới hạn an toàn về thời gian truy cập và điều khiển so với các thông số chuẩn của nhà sản xuất đưa ra Điều này tuy đảm bảo cho bộ điều khiển hoạt động đúng theo yêu cầu,nhưng mặt khác đã ảnh hưởng đến tính tối ưu của bản thiết kế nếu xét trên mặt sản xuất công nghiệp Để giải quyết nhược điểm này,chúng em xin đưa ra phương án thiết kế thứ hai Cụ thể là sẽ loại bỏ trạng thái thứ hai (Rd2 và Wr2 ) ở cả hai công đoạn đọc hoặc viết ,đồng thời cho phép thực hiện công đoạn quay đầu mà không cần quay trở ngược về lại trạng thái Idle ban đầu Như vậy,ở bộ điều khiển này sẽ tiêu tốn một chu kì clock để thực hiện một công đoạn bộ nhớ và hai clock cho công đoạn quay đầu, ít hơn so với bản thiết kế ban đầu

TÀI LIỆU THAM KHẢO

[1] Xilinx Ltd (2006),Spartan-3 Starter Kit Board User Guide UG230

[2] Integrated Silicon Solution (2006) Inc,Datasheet SRAM IS61LV25616AL

[3] Bob Zeidman,”Introduction to CPLD and FPGA Design”

Ngày đăng: 07/08/2014, 05:20

HÌNH ẢNH LIÊN QUAN

2. Sơ đồ khối và các tín hiệu I/O - THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA ppt
2. Sơ đồ khối và các tín hiệu I/O (Trang 1)
Chỉ  và  hai  thanh  ghi  dữ  Hình 3. Sơ đồ khối đường dẫn dữ liệu của bộ điều khiển SRAM - THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA ppt
h ỉ và hai thanh ghi dữ Hình 3. Sơ đồ khối đường dẫn dữ liệu của bộ điều khiển SRAM (Trang 2)
Hình 2.Mô hình giao tiếp giữa hệ thống và SRAM thông qua bộ điều khiển (SRAM Controler) - THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA ppt
Hình 2. Mô hình giao tiếp giữa hệ thống và SRAM thông qua bộ điều khiển (SRAM Controler) (Trang 2)
Hình 6.  Lưu đồ thuật toán phương án thiết kế tối ưu. - THIẾT KẾ VÀ THỰC HIỆN SRAM IP CORE TRÊN HỆ THỐNG NHÚNG FPGA ppt
Hình 6. Lưu đồ thuật toán phương án thiết kế tối ưu (Trang 4)

TỪ KHÓA LIÊN QUAN

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