1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

ASIC trên cơ sở thư viện phần tử logic chuẩn

25 353 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 25
Dung lượng 47,49 KB

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

Nội dung

Dựa theo công nghệ sản xuất và thiết kế có thể chia ASIC thành các loại cơ bản như sau: • ASIC trên cơ sở thư viện phần tử logic chuẩn standard-cell-based ASIC • ASIC dựa trên mảng lôgíc

Trang 1

Đối lập với ASIC là các vi mạch tích hợp cho mục đích chung như 7400 series và 4000 series những vi mạch này có thể liên kết để tạo ra nhiều ứng dụng khác nhau Ngoài ra vì tính tương đối của việc phân loại theo mục đích sử dụng mà còn có thêm khái niệm application specific standard product (ASSP) – thiết bị chuẩn cho ứng dụng đặc biệt, chỉ đến những vi mạch nằm giữa hai khái niệm ASIC và vi mạch tích hợp cho mục đích chung.

Khái niệm ASIC là một khái niệm tương đối rộng và liên quan đến công nghệ thiết kế sản xuất IC chứ không phải gắn với một dòng sản phẩm hay thiết bị cụ thể.

Bản thiết kế ASIC thường được viết trên HDL ngôn ngữ mô tả phần cứng như Verilog, VHDL Dựa theo công nghệ sản xuất và thiết kế có thể chia ASIC thành các loại cơ bản như sau:

• ASIC trên cơ sở thư viện phần tử logic chuẩn (standard-cell-based ASIC)

• ASIC dựa trên mảng lôgíc (gate-array-based ASIC)

• ASIC đặc chế hoàn toàn (full-custom ASIC)

• ASIC tiền cấu trúc (structured/platform design)

• ASIC dùng thư viện phần tử logic và các phần tử thiết kế sẵn (cell libraries, IP-based design)

ASIC trên c s th vi n ph n t logic chu n ơ ở ư ệ ầ ử ẩ

Vào giữa thập niên 1980 những người thiết kế IC thường phải chọn một nhà sản xuất bán dẫn nhất định và thực hiện tất cả quy trình thiết kế của mình bằng những công cụ thiết kế của nhà sản xuất đó.

Cùng với xuất hiện của nhà cung cấp công cụ thiết kế thứ ba là sự ra đời của khái niệm thư viên phần tử logic chuẩn standard cell library.

Thư viện phần tử logic chuẩn là thư viện tất cả các phần tử cơ bản tạo thành vi mạch như logic AND, OR, XOR… kèm theo các thông số vật lý như thời gian trễ, điện cảm, điện dung… Thư viện này được định dạng chuẩn cho phép các công cụ thiết kế có thể đọc, sau đó sẽ biên dịch bản thiết

kế ra dạng mô tả chi tiết sử dụng các phần tử của thư viện chuẩn, thuật ngữ tiếng Anh gọi là netlist Vào cuối thập niên 1980 thì những phần mềm thiết kế dạng như design compiler của Synopsys được đưa vào sử dụng Sở dĩ có tên gọi compiler là do phần mềm này làm việc về nguyên tắc

Trang 2

không khác gì một trình biên dịch thông thường trên máy tính, thay vì mã viết bằng C, Pascal thì vi mạch được viết bằng HDL, còn thư viện phần tử logic đóng vai trò như tập lệnh của bộ vi xử lý.

ASIC d a trên m ng logic ự ả

Sử dụng mảng logic (gate array) là một phương pháp khác để thiết kế IC Ở đây “gate” dùng như một đơn vị để đo khả năng chứa các phần tử logic của vi mạch bán dẫn (xem thêm về logic gate).

Vi mạch lập trình dùng mảng logic là một khái niệm rộng bao hàm các thiết bị như PLA, PAL, CPLD, FPGA FPGA là một công nghệ mới nhưng cũng được xếp vào dạng này, mặc dù thông thường người thiết kế xếp FPGA sang lớp vi mạch bán dẫn người lập trình bởi người dùng cuối (xem FPD).

Một vi mạch dạng này cấu thành từ 2-5 lớp bán dẫn kim loại, các phần tử logic được phân bố đều trên các lớp này Ví dụ ma trận các phần tử OR, AND PAL, PLA, hay trong FPGA là các khối logic lập trình được Các phần tử logic chưa được kết nối với nhau, quá trình thiết kế bản chất là lập trình

để kết nối giữa các phần tử logic.

Ưu điểm của ASIC thiết kế theo kiểu này là chi phí sản xuất rẻ do vi mạch sản xuất hàng loạt và có cấu trúc tương tự như nhau Tính linh động của thiết kế phụ thuộc vào loại mảng logic được sử dụng Ví dụ vi mạch lập trình dùng PROM chỉ được lập trình một lần suy nhất trong khi với vi mạch dùng công nghệ EEROM hay FPGA thì có thể lập trình lại, FPGA còn cho phép người thiết kế lập trình lại mà không cần công cụ đặc biệt nào.

Mặc dù ASIC dùng mảng logic có chi phí thấp nhưng không có được sự tối ưu như ASIC trên cơ sở thư viện phần tử logic hay ASIC đặc chế hoàn toàn Mặt khác nhưng ASIC dạng này yêu cầu phần mềm thiết kế phức tạp hơn.

ASIC đặ c ch hoàn toàn ế

Công nghệ sản xuất ASIC đặc chế hoàn toàn bào hàm toàn bộ các quá trình để sản xuất IC, kể cả giai đoạn in khắc bán dẫn quang học (photo lithographic).

Ưu điểm của sản phẩm dạng này là tính tối ưu về diện tích, tăng hiệu suất làm việc của IC, khả năng tích hợp với các thiết bị tương tự hay các phần tử thiết kế sẵn khác Bù lại thì quy trình thiết kế tốn nhiều thời gian, đòi hỏi đầu tư cơ sở vật chất tốn kém cũng như nhân lực với kỹ năng cao.

Có thể xếp ASIC tiền cấu trúc nằm giữa hai loại ASIC trên cơ sở thư viện phần tử logic chuẩn và ASIC dựa trên mảng logic.

Trang 3

Bên cạnh FPGA theo đúng nghĩa còn tồn tại một dạng vi mạch thiết kế trên FPGA nhưng khi sản xuất dùng công nghệ sao chép “cứng” (hard copy), sản phẩm cho ra hoạt động vẫn như thiết kế nhưng mất đi khả năng lập trình lại vì các liên kết đã bị được “hàn” cứng Công nghệ này cho phép giảm chi phí cho vi mạch từ 30-70% Các hãng sản xuất FPGA lớn như Xilinx hay Altera đều hỗ trợ công nghệ này cho sản phẩm của họ.

ASIC dùng th vi n logic và các ph n t thi t k s n ư ệ ầ ử ế ế ẵ

Nếu như thư viện logic thường được nhà sản xuất bán dẫn cung cấp miễn phí thì IP-core (intellectual property core) là các phần tử hoặc của nhà sản xuất hoặc của bên thứ ba cung cấp mà người dùng phải trả tiền, các phần thiết kế có thể tồn tại ở dạng “mềm” tức là chỉ có mã HDL mức cao, hay ở dạng “cứng” tức là toàn bộ sơ đồ thiết kế chi tiết trên một thư viện cụ thể và sẵn sang đưa trực tiếp vào quá trình sản xuất bán dẫn.

Tương tự như phần mềm thì với phần cứng cũng xuất hiện cộng đồng mở, là nơi xây dựng và phổ biến những IP-core miễn phí.

Ví dụ về IP-cores như nhân của bộ vi xử lý, USB module, Ethernet, RAM, ROM…

Điểm khác nhau giữa FPGA và ASIC?

Đối với người học thiết kế vi mạch thì đây là câu hỏi phổ biến Nó có vẻ như là một câu hỏi đơn giản nhưng để trả lời thì cần phân tích nhiều vấn để có thể hiểu rõ Bài này sẽ phân tích các khía cạnh cơ bản đó

FPGA vs ASIC

Điểm khác nhau chính giữa ASIC và FPGA phụ thuộc vào giá thành, công cụ hỗ trợ, hiệu suất vàtính linh hoạt của thiết kế Chúng có những điểm mạnh và điểm yếu riêng, người thiết kế cần khai thác các điểm mạnh để chọn lựa FPGA hoặc ASIC cho phù hợp với yêu cầu sản phẩm Tuy nhiên, sự phát triển của FPGA đã giảm dần các ưu điểm của ASIC

FPGA - Field Programable Gate Arrays

Ưu điểm của thiết kế FPGA

Time-to-market ngắn hơn: Không cần thực hiện layout, làm mặt nạ (mask) hoặc các bước của quá trình chế tạo khi dùng FPGA Chúng luôn sẵn sàng để chuyển cod RTL của người thiết kế thành phần cứng Thế là xong!

Không có NRE (Non Recurring Expenses): Chi phí này thường có khi thiết kế ASIC đó là mất nhiều tiền mua công cụ Đối với FPGA chi phí chính không nằm ở công cụ Các công cụ của FPGA thường rẻ (có thể miễn phí hoặc đi kèm theo khi mua FPGA)

Qui trình thiết kế đơn giản hơn: Điều này bởi vì các phần mềm hỗ trợ FPGA đã làm gần như tất

cả các công việc như routing, placement, và timing Các can thiệp bằng tay của người lập trình thường là ít Do đó thiết kế FPGA giảm được thời nhiều thời gian cho các việc phức tạp như floorplanning, place and route, và phân tích timing

Trang 4

Dễ dự đoán kế hoạc của dự án: The Thiết kế FPGA không phụ thuộc thời gian sản xuất của các nhà máy chế tạo bởi vì các logic của thiết kế đã được tổng hợp và kiểm tra bởi các thiết bị FPGA.

Khả năng lập trình lại thiết kế: Một thay đổi thiết kế có thể dễ dàng thực hiện nhanh chóng FPGA có thể lập trình lại và thay đổi thiết kế dễ dàng trong khi đó đối với ASIC, để thay đổi có phải mất rất nhiều chi phí và thời gian để thực hiện Chi phí của FPGA có thể từ vài $ đến hàng ngàn $ tùy thuộc vào các tính năng của FPGA

Tái sử dụng: Khả năng tái sử dụng của FPGA là ưu điểm chính Bản chạy thử của thiết kế trên FPGA có thể cho ra gần như chính xác kết quả khi nó được thực hiện trên ASIC Nếu thiết kế sai,

có thể thay đổi code RTL và tổng hợp hợp lại và nạp lại thiết kế trên FPGA

FPGA tốt cho làm sản phẩm mẫu hoặc số lượng giới hạn Nếu số lượng lên đến hàng trăm thì nó không đáng giá hơn việc thiết kế bằng ASIC

Nói chung là FPGA dùng cho thiết kế tốc độ thấp, độ phức tạp thấp, số lượng ít Nhưng ngày nay, FPGA thậm chí có thể chạy ở tốc độ 500 MHz, mật độ logic tăng nhanh chóng, và nhiều chức năng mới được bổ sung như: các lõi vi xử lý nhúng, các khối DSP, chuẩn truyền nối tiếp tốc

độ cao FPGA gần như đáp ứng được cho hầu hết các loại thiết kế

Không như ASIC, FPGA có các phần cứng đặc biệt như RAM trên chip, mô-đun DCM, MAC,

bộ nhớ và I/O tốc độ cao, CPU nhúng được tích hợp sẵn, chúng có thể được dùng để xây dựng hệthống hiệu suất cao hơn Những FPGA hiện đại đều được tích hợp các chức năng trên Những FPGA mạnh thường có thêm các khối PLL, so sánh sai khác, tốc độ cao, bộ nhận phần cứng cho DSP, bộ nhớ, I/O lập trình được, các lõi IP và lõi vi xử lý nhúng Có Power PC (hardcore) và Microblaze (softcore) trong Xilinx, ARM (hardcore) và Nios (softcore) trong Altera Có những FPGA tích hợp sẵn cả ADC Sử dụng các tính năng trên người thiết kế có thể xây dựng nhanh chóng hệ thống trên chip Bây giờ, bạn thấy có cần thiết phải làm ASIC nữa không?

Tổng hợp FPGA thì dễ dàng hơn nhiều lần ASIC

Với FPGA, bạn không cần phải floor-planning, công cụ có thể làm điều này tốt và hiệu quả Với ASIC, bạn phải làm bước này

Nhược điểm của thiết kế FPGA

Công suất tiêu thụ nhiều hơn Bạn không có bất kỳ cách thức nào để tối ưu công suất Đây là khía cạnh mà ASIC chiến thắng khi so sánh!

Bạn phải sử dụng tài nguyên có sẵn trên FPGA Vì vậy FPGA giới hạn kích thước thiết kế.Tốt cho sản xuất ít sản phẩm Khi số lượng tăng lên, chi phí sẽ cao hơn so với ASIC

ASIC - Application Specific Intergrated Circuit

Ưu điểm của thiết kế ASIC

Giá … giá … giá … Giá thấp hơn: Đối với mỗi đợt sản xuất số lượng lớn thì giá sẽ rất rẻ Số lượng lớn thiết kế ASIC chắc chắn sẽ rẻ hơn thiết kế thực hiện trên FPGA

Trang 5

Tốc độ … ASIC nhanh hơn FPGA: ASIC cho được tính linh hoạt cao Điều này tạo điều kiện thuận lợi cho việc tối ưu tốc độ.

Công suất thấp: ASIC có thể được tối ưu cho các thiết kế cần công suất thấp Có nhiều kỹ thuật công suất thấp như: power gating, clock gating, multi Vt, pipelining, … được áp dụng để đạt được yêu cầu Đây là điểm chí tử của FPGA!!! Bạn thử nghĩ xem, điện thoại cần sạc lại pin sau mỗi cuộc gọi, người dùng không thể chấp nhận điều này, ASIC giúp cho thời gian dùng pin dài hơn!!

Trong ASIC, bạn có thể thực hiện mạch tương tự hoặc cả số và tương tự Điều này nói chung là không thể đối với FPGA

Trong ASIC DFT (Design For Test) có thể được chèn vào để kiểm tra phần cứng Đối với FPGA thì điều này không cần

Nhược điểm của thiết kế ASIC

Time-to-market: một số dự án ASIC lớn có thể kéo dài cả năm hoặc hơn để thiết kế Cách tốt nhất để rút ngắn thời gian ra sản phẩm là làm sản phẩm thử trên FPGA sau đó thực hiện trên ASIC

Các vấn đề thiết kế: Trong ASIC, bạn phải quan tâm đến vấn đề thiết kế để chế tạo, tình trạng của các tín hiệu và nhiều thứ khác Trong FPGA, bạn không cần làm các công việc đó, bởi vì người thiết kế ASIC đã làm hết rồi (Đừng quên là FPGA cũng là do người kỹ sư thiết kế ASIC tạo ra !!)

Công cụ đắt: Các công cụ thiết kế ASIC thì rất đắt Bạn tốn nhiều tiền cho chi phí này

FPGA là gì ?

FPGA là viết tắt của thuật ngữ tiếng anh “Field Programmable Gate Array“, nếu được dịch sang tiếng việt là một loại vi mạch dùng cấu trúc mảng phần tử logic có thể lập trình được Hay có thể hiểu nôm na nó là một loại chip trắng cho phép người dùng có thể tái cấu hình lại kiến trúc theo ý người dùng để thực thi một chức năng cụ thể

Để dễ hình dung hơn, nếu như những ai đã biết về lập trình vi điều khiển hoặc ARM, thì những

vi điều khiển này như (AT89/PIC/MSP430, …) hoặc ARM SoC (STM32, …) đều là loại chip được thiết kế trên công nghệ ASIC, tức kiến trúc phần cứng do nhà sản xuất thiết kế được cố định trong quá trình sản xuất, người dùng không thể nào thay đổi hoặc chỉnh sửa được Người kĩ sư lập trình ứng dụng hoặc lập trình firmware đều phải nghiên cứu nắm vững kiến trúc của từng loại VĐK trên để phát triển phần mềm, giải thuật tương ứng Do đó, lập trình vi điều khiển còn được hiểu là lập trình phần mềm dựa trên phần cứng có sẵn Còn đối với FPGA, người dùng có thể tự thiết kế lại kiến trúc phần cứng theo ý mình muốn, kèm theo xây dựng các driver tương ứng để phát triển các phần mềm ứng dụng và giải thuất tối ưu hơn

Trang 6

Như vậy, ưu điểm thứ nhất của FPGA là tính linh động đối với người dùng, giúp phát triển các giải pháp tốt hơn mà không phụ thuộc vào phần cứng của nhà sản xuất Chúng ta có thể sử dụng FPGA để thiết kế cũng như lập trình được hầu hết các chức năng của bất kì mạng số nào Việc so sánh ưu điểm, khuyết điểm giữa công nghệ FPGA và ASIC sẽ được thảo luận trong các chuyên mục sau.

Cũng giống như vi điều khiển, số lần nạp FPGA hầu như không giới hạn Dữ liệu (chương trình) nạp cho FPGA sẽ bị mất khi mất nguồn (điện) giống như RAM trong máy tính Nếu muốn lưu giữlại file nạp này thì cần phải có một bộ nhớ ngoài Flash/ROM(do đặc tính của loại bộ nhớ này là lưu dữ liệu cho dù có mất nguồn) để mỗi lần bật nguồn, file dạng binary sẽ tự động nạp lại vào FPGA

Lịch sử FPGA

FPGA được thiết kế đầu tiên bởi Ross Freeman, người sáng lập công ty Xilinx vào năm 1984 Tiền thân trước đó của FPGA chính là CPLD CPLD được cấu trúc từ số lượng nhất định các khối SPLD (Simple programmable devices, thuật ngữ chung chỉ PAL, PLA) SPLD thường là một mảng logic AND/OR lập trình được có kích thước xác định và chứa một số lượng hạn chế các phần tử nhớ đồng bộ (clocked register) Cấu trúc này hạn chế khả năng thực hiện những hàm phức tạp

và hiệu suất không cao

Kiến trúc của FPGA là kiến trúc mảng các khối logic, FPGA có khả năng chứa tới từ 100.000 đến hàng vài tỷ cổng logic, trong khi CPLD chỉ chứa từ 10.000 đến 100.000 cổng logic Một điểm khác biệt với CPLD là trong những FPGA hiện đại được tích hợp nhiều những bộ logic số học đã

sơ bộ tối ưu hóa, hỗ trợ RAM, ROM, tốc độ cao, hay các bộ nhân cộng(multiplication and accumulation, MAC), thuật ngữ tiếng Anh là DSP slice dùng cho những ứng dụng xử lý tín hiệu

số DSP

Ngoài khả năng tái cấu trúc vi mạch toàn cục, một số FPGA hiện đại còn hỗ trợ tái cấu trúc cục

bộ, tức là khả năng tái cấu trúc một bộ phận riêng lẻ (partial configuration) trong khi vẫn đảm bảo hoạt động bình thường cho các bộ phận khác

Tại sao sử dụng FPGA ?

Ắt hẳn khi tìm hiểu về một công nghệ, chúng ta sẽ thắc mắc rằng vì sao lại phải sử dụng FPGA trong khi đã có MCU/CPU/DSP rất mạnh, những ứng dụng/trường hợp nào phải cần đến FPGA mới giải quyết được Để trả lời được những câu hỏi này, chúng ta cần phải tìm hiểu sâu hơn về cấu tạo kiến trúc FPGA, quy trình thiết kế như thế nào, những kiến thức chuyên sâu về các ứng dụng khác nhau, đó là những gì sẽ được thảo luận ở phần sau và các chuyên mục khác Tuy nhiên, phần này mình muốn giải thích và nhấn mạnh ý nghĩa vai trò quan trọng của FPGA trong thiết kế hệ thống số để các bạn có động lực, hứng thú khi tìm hiểu về FPGA.Thứ nhất, do FPGA

Trang 7

có kiến trúc mảng phần tử logic nên có thể thực thi song song So với vi điều khiển hoặc CPU phải thực thi mã lệnh theo dạng tuần tự Như vậy với FPGA, chúng ta có thể tăng hiệu

suất/năng suất xử lý của hệ thống, hoặc những ứng dụng đòi hỏi phải xử lý tốc độ cao hoặc dùng trong các hệ thống làm việc theo thời gian thực.Thứ hai, vì có thể cấu hình, lập trình lại được, nên FPGA dễ dàng mở rộng các ngoại vi cũng như giao tiếp với nhiều thiết bị hơn mà các MCU hoặc ASIC lại hạn chế về điểm này

Thứ ba, nhìn chung ASIC/ASSP có hiệu suất cao hơn nếu xét về mặt tiêu thụ công suất và số lượng cổng Nhưng nếu chỉ cần thực thi một chức năng nhỏ nào đó, một chip ASIC/ASSP có thể đòi hỏi công suất tiêu thụ lớn hơn và nhiều cổng hơn thực tế yêu cầu Với FPGA, firmware có thể xác định được “kích cỡ” của ứng dụng, từ đó giảm số cổng và công suất cần tiêu thụ

Thứ tư, nếu xét về giá thành, FPGA không thể nào so sánh được với ASIC hay SoC, nhưng bù lại, với khả năng tái cấu hình kiến trúc, FPGA đóng vài trò vô cùng to lớn trong việc giảm giá thành

và thời gian chế tạo ASIC Để rõ hơn, chúng ta cần phải biết quy trình thiết kế của hai công nghệ này FPGA và ASIC đều phải trải qua hai giai đoạn: Front End (ý tưởng, thiết kế ở mức logic sử dụng các ngôn ngữ mô tả phần cứng, kiểm tra mô phỏng bằng phần mềm, …) và Back End (kiểmtra timing đảm bảo thiết kế sẽ hoạt động ở tần số yêu cầu, layout chip, …) Ở khâu backend này, với FPGA, các giai đoạn sẽ được làm tự động bằng phần mềm của nhà sản xuất FPGA và tạo ra 1file bitstream để nạp xuống FPGA và chạy thử nghiệm Còn với ASIC, thì back end cần tốn nhân lực và thời gian lâu hơn Sau đó, toàn bộ thiết kế đó được gửi tới nhà máy sản xuất chip (vd nhưIntel, TSMC, …) để làm ra chip mẫu với giá thành vài triệu đô la Tiếp đến là quá trình test chip trong môi trường thực, nếu thất bại thì phải thực hiện lại từ đầu như qui trình trên và vài triệu

đô trước đó xem như vứt sọt rác Nhưng với FPGA, không những giúp rút ngắn thời gian mà còngiảm tối đa chi phí nghiên cứu, thiết kế có thể thử nghiệm trực tiếp trên FPGA gần với môi trường ASIC thực nhất Khả năng tái cấu hình cho phép bạn sửa đi sửa lại thiết kế cho đến khi đạt yêu cầu mà không tốn một xu nào cho nhà sản xuất chip

Các ứng dụng FPGA:

ASIC Prototyping

5G Wireless (không dây 5G)

Wired Communication (Ethernet, router, switch, …)

Automotive (xe hơi)

Aerospace & Defense (hàng không, vũ trụ, quân sự)

Embedded Vision (xử lý ảnh, video)

DSP (xử lý tín hiệu số)

Medical (các hệ thống y sinh)

Trang 8

Test & Measurement (thiết bị kiểm tra và đo lường)

Industrial IoT (IoT công nghiệp)

FPGA Architecture

Chức năng của mỗi thành phần như sau:

Khối CLB: thực thi các chức năng logic, cung cấp các tính toán và phần tử nhớ cơ bản được sử

dụng trong hệ thống số CLBs là phần tử cơ bản cấu thành FPGA, là nguồn tài nguyên logic chínhtạo nên các mạch logic đồng bộ lẫn không đồng bộ Một CLB cơ bản gồm một mạch tổ hợp có thể lập trình (còn gọi là LUT), một Flip-Flop hoặc một chốt (latch) LUT(Look up table) là khối logic có thể thực hiện bất kì hàm logic nào từ 4 đầu vào (số đầu vào này sẽ tùy thuộc vào từng dòng chip của mỗi hãng và sẽ được thảo luận chi tiết trong bài viết khác), kết quả của hàm này tùy vào mục đích mà gửi ra ngoài khối logic trực tiếp hay thông qua phần tử nhớ flip-flop Ngoàikhối logic cơ bản đó, nhiều Chip FPGA hiện nay gồm một hỗn hợp các khối khác nhau, một số trong đó chỉ được dùng cho các chức năng cụ thể, chẳng hạn như các khối bộ nhớ chuyên dụng,các bộ nhân (multipliers) hoặc các bộ ghép kênh (multiplexers) Tất nhiên, cấu hình bộ nhớ được

sử dụng trên tất cả các khối logic để điều khiển các chức năng cụ thể của mỗi phần tử bên trongkhối đó

Khối kết nối: dùng để liên kết các khối logic và I/O lại với nhau để tạo thành một thiết kế hoàn

chỉnh Mạng liên kết trong FPGA được cấu thành từ các đường kết nối theo hai phương ngang

và đứng, tùy theo từng loại FPGA mà các đường kết nối được chia thành các nhóm khác nhau Các đường kết nối được nối với nhau thông qua các khối chuyển mạch lập trình được

(programmable switch), trong một khối chuyển mạch chứa một số lượng nút chuyển lập trình được đảm bảo cho các dạng liên kết phức tạp khác nhau

Khối I/O: cung cấp giao tiếp giữa các khối logic và kiến trúc định tuyến đến các thành phần bên

ngoài Một trong những vấn đề quan trọng nhất trong thiết kế kiến trúc I/O là việc lựa chọn các tiêu chuẩn điện áp cung cấp và điện áp tham chiếu sẽ được hỗ trợ Số lượng Pin (I/O) của FPGA tương đối lớn, thường được chia ra làm 2 loại: User Pin(chân người dùng), Dedicated Pin (chân chuyên dụng)

Trang 9

User Pin: người dùng có thể lập trình như đầu vào, đầu ra hoặc cả đầu vào – ra Mỗi pin được kết nối với một “IO Cell” bên trong FPGA, được cấp bởi các chân VCCIO (IO power pin).

Dedicated Pin: được mã hóa cứng với một chức năng cụ thể

Power Pin

Configuration Pin: các pin để cấu hình FPGA

Dedicated input, hay Clock Pin: điều khiển mạng lưới clock bên trong FPGA

Voltage IO: cấp nguồn cho các cổng logic và flip-flops bên trong FPGA

Theo thời gian, các kiến trúc FPGA cơ bản đã được phát triển hơn nữa thông qua việc bổ sung các khối chức năng đặc biệt có thể lập trình, như bộ nhớ trong (Block RAMs), logic số học (ALU),

bộ nhân, DSP-48 và thậm chí là bộ vi xử lý nhúng được thêm vào do nhu cầu của các nguồn tài nguyên cho một ứng dụng Kết quả là nhiều FPGA ngày nay có nhiều nguồn tài nguyên hơn so với các FPGA trước đó

Các nhà sản xuất FPGA & thị phần

Trên thế giới, hiện nay, có thể kể đến tên của một số hãng FPGA như: Xilinx, Intel (Altera – được mua lại bởi Intel năm 2015), Microsemi (Actel), Lattice (Europe), Quick Logic, … Thị phần của cáchãng được cập nhật trong hình sau

compare to truth table

if ((x='0') and (y='0')) then

F <= '0';

else

F <= '1';

end if;

Trang 11

driver (ESD book figure 2.3)

AND gate (ESD book figure 2.3)

two descriptions provided

library ieee;

-use ieee.std_logic_1164.all;

entity AND_ent is

Trang 12

-architecture behav1 of AND_ent is begin

process(x, y)

begin

compare to truth table

if ((x='1') and (y='1')) then

-use ieee.std_logic_1164.all;

entity XOR_ent is

Ngày đăng: 22/10/2017, 00:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w