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 352 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

Nội dung

S ơl ượ c v ềASIC ASIC (phát âm: ay-sik), viết tắt application-specific integrated circuit tiếng Anh, thuật ngữ vi mạch tích hợp chuyên dụng điện tử học ASIC vi mạch IC thiết kế dành cho ứng dụng cụ thể ASIC ngày ứng dụng khắp nơi, ví dụ vi xử lý điện thoại di động, hay chip xử lý máy móc tự động, phương tiện truyền thông, xe cộ, tàu vũ trụ, hệ thống xử lý, dây chuyền công nghiệp Đối lập với ASIC vi mạch tích hợp cho mục đích chung 7400 series 4000 series vi mạch liên kết để tạo nhiều ứng dụng khác Ngoài tính tương đối việc phân loại theo mục đích sử dụng mà thêm khái niệm application specific standard product (ASSP) – thiết bị chuẩn cho ứng dụng đặc biệt, đến vi mạch nằm hai khái niệm ASIC vi mạch tích hợp cho mục đích chung Khái niệm ASIC khái niệm tương đối rộng liên quan đến công nghệ thiết kế sản xuất IC gắn với dòng sản phẩm hay thiết bị cụ thể Bản thiết kế ASIC thường viết HDL ngôn ngữ mô tả phần cứng Verilog, VHDL Dựa theo công nghệ sản xuất thiết kế chia ASIC thành loại sau: • ASIC sở thư viện phần tử logic chuẩn (standard-cell-based ASIC) • ASIC dựa 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 phần tử thiết kế sẵn (cell libraries, IP-based design) ASIC c s th vi ện ph ần t logic chu ẩn Vào thập niên 1980 người thiết kế IC thường phải chọn nhà sản xuất bán dẫn định thực tất quy trình thiết kế công cụ thiết kế nhà sản xuất Cùng với xuất nhà cung cấp công cụ thiết kế thứ ba đời 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 thư viện tất phần tử tạo thành vi mạch logic AND, OR, XOR… kèm theo thông số vật lý thời gian trễ, điện cảm, điện dung… Thư viện định dạng chuẩn cho phép công cụ thiết kế đọc, sau biên dịch thiết kế dạng mô tả chi tiết sử dụng phần tử thư viện chuẩn, thuật ngữ tiếng Anh gọi netlist Vào cuối thập niên 1980 phần mềm thiết kế dạng design compiler Synopsys đưa vào sử dụng Sở tên gọi compiler phần mềm làm việc nguyên tắc không khác trình biên dịch thông thường máy tính, thay mã viết C, Pascal vi mạch viết HDL, thư viện phần tử logic đóng vai trò tập lệnh vi xử lý ASIC dựa mảng logic Sử dụng mảng logic (gate array) phương pháp khác để thiết kế IC Ở “gate” dùng đơn vị để đo khả chứa phần tử logic vi mạch bán dẫn (xem thêm logic gate) Vi mạch lập trình dùng mảng logic khái niệm rộng bao hàm thiết bị PLA, PAL, CPLD, FPGA FPGA công nghệ xếp vào dạng này, 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 người dùng cuối (xem FPD) Một vi mạch dạng cấu thành từ 2-5 lớp bán dẫn kim loại, phần tử logic phân bố lớp Ví dụ ma trận phần tử OR, AND PAL, PLA, hay FPGA khối logic lập trình Các phần tử logic chưa kết nối với nhau, trình thiết kế chất lập trình để kết nối phần tử logic Ưu điểm ASIC thiết kế theo kiểu chi phí sản xuất rẻ vi mạch sản xuất hàng loạt cấu trúc tương tự Tính linh động thiết kế phụ thuộc vào loại mảng logic sử dụng Ví dụ vi mạch lập trình dùng PROM lập trình lần suy với vi mạch dùng công nghệ EEROM hay FPGA lập trình lại, FPGA 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 Mặc dù ASIC dùng mảng logic chi phí thấp tối ưu ASIC sở thư viện phần tử logic hay ASIC đặc chế hoàn toàn Mặt khác ASIC dạng yêu cầu phần mềm thiết kế phức tạp 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 trình để sản xuất IC, kể giai đoạn in khắc bán dẫn quang học (photo lithographic) Ưu điểm sản phẩm dạng tính tối ưu diện tích, tăng hiệu suất làm việc IC, khả tích hợp với thiết bị tương tự hay phần tử thiết kế sẵn khác Bù lại quy trình thiết kế tốn nhiều thời gian, đòi hỏi đầu sở vật chất tốn nhân lực với kỹ cao ASIC ti ền cấu trúc Đây dạng biến tấu ASIC sở mảng logic Nhưng thay mảng logic sử dụng cấu trúc định sẵn, tùy vào loại ứng dụng mà cấu trúc định sẵn khác Với mảng logic người thiết kế tạo vi mạch để thực hàm logic tài nguyên cho phép, với vi cấu trúc định sẵn giải lớp toán hẹp Bù lại đẩy nhanh trình sản xuất, giảm giá thành số trường hợp tối ưu hóa vi mạch so với dạng ASIC dùng mảng logic thể xếp ASIC tiền cấu trúc nằm hai loại ASIC sở thư viện phần tử logic chuẩn ASIC dựa mảng logic Bên cạnh FPGA theo nghĩa tồn dạng vi mạch thiết kế FPGA sản xuất dùng công nghệ chép “cứng” (hard copy), sản phẩm cho hoạt động thiết kế khả lập trình lại liên kết bị “hàn” cứng Công nghệ 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 Xilinx hay Altera hỗ trợ công nghệ cho sản phẩm họ ASIC dùng th vi ện logic ph ần t thi ết k ế s ẵn Nếu thư viện logic thường nhà sản xuất bán dẫn cung cấp miễn phí IP-core (intellectual property core) phần tử nhà sản xuất bên thứ ba cung cấp mà người dùng phải trả tiền, phần thiết kế tồn dạng “mềm” tức mã HDL mức cao, hay dạng “cứng” tức toàn đồ thiết kế chi tiết thư viện cụ thể sẵn sang đưa trực tiếp vào trình sản xuất bán dẫn Tương tự phần mềm với phần cứng xuất cộng đồng mở, nơi xây dựng phổ biến IP-core miễn phí Ví dụ IP-cores nhân vi xử lý, USB module, Ethernet, RAM, ROM… Điểm khác FPGA ASIC? Đối với người học thiết kế vi mạch câu hỏi phổ biến Nó câu hỏi đơn giản để trả lời cần phân tích nhiều vấn để hiểu rõ Bài phân tích khía cạnh FPGA vs ASIC Điểm khác ASIC FPGA phụ thuộc vào giá thành, công cụ hỗ trợ, hiệu suất tính linh hoạt thiết kế Chúng điểm mạnh điểm yếu riêng, người thiết kế cần khai thác điểm mạnh để chọn lựa FPGA ASIC cho phù hợp với yêu cầu sản phẩm Tuy nhiên, phát triển FPGA giảm dần ưu điểm ASIC FPGA - Field Programable Gate Arrays Ưu điểm thiết kế FPGA Time-to-market ngắn hơn: Không cần thực layout, làm mặt nạ (mask) bước trình chế tạo dùng FPGA Chúng sẵn sàng để chuyển cod RTL người thiết kế thành phần cứng Thế xong! Không NRE (Non Recurring Expenses): Chi phí thường thiết kế ASIC nhiều tiền mua công cụ Đối với FPGA chi phí không nằm công cụ Các công cụ FPGA thường rẻ (có thể miễn phí kèm theo mua FPGA) Qui trình thiết kế đơn giản hơn: Điều phần mềm hỗ trợ FPGA làm gần tất công việc routing, placement, timing Các can thiệp tay người lập trình thường Do thiết kế FPGA giảm thời nhiều thời gian cho việc phức tạp floorplanning, place and route, phân tích timing Dễ dự đoán kế hoạc dự án: The Thiết kế FPGA không phụ thuộc thời gian sản xuất nhà máy chế tạo logic thiết kế tổng hợp kiểm tra thiết bị FPGA Khả lập trình lại thiết kế: Một thay đổi thiết kế dễ dàng thực nhanh chóng FPGA lập trình lại thay đổi thiết kế dễ dàng ASIC, để thay đổi phải nhiều chi phí thời gian để thực Chi phí FPGA từ vài $ đến hàng ngàn $ tùy thuộc vào tính FPGA Tái sử dụng: Khả tái sử dụng FPGA ưu điểm Bản chạy thử thiết kế FPGA cho gần xác kết thực ASIC Nếu thiết kế sai, thay đổi code RTL tổng hợp hợp lại nạp lại thiết kế FPGA FPGA tốt cho làm sản phẩm mẫu số lượng giới hạn Nếu số lượng lên đến hàng trăm không đáng giá việc thiết kế ASIC Nói chung FPGA dùng cho thiết kế tốc độ thấp, độ phức tạp thấp, số lượng Nhưng ngày nay, FPGA chí chạy tốc độ 500 MHz, mật độ logic tăng nhanh chóng, nhiều chức bổ sung như: lõi vi xử lý nhúng, khối DSP, chuẩn truyền nối tiếp tốc độ cao FPGA gần đáp ứng cho hầu hết loại thiết kế Không ASIC, FPGA phần cứng đặc biệt RAM chip, mô-đun DCM, MAC, nhớ I/O tốc độ cao, CPU nhúng tích hợp sẵn, chúng dùng để xây dựng hệ thống hiệu suất cao Những FPGA đại tích hợp chức Những FPGA mạnh thường thêm khối PLL, so sánh sai khác, tốc độ cao, nhận phần cứng cho DSP, nhớ, I/O lập trình được, lõi IP lõi vi xử lý nhúng Power PC (hardcore) Microblaze (softcore) Xilinx, ARM (hardcore) Nios (softcore) Altera FPGA tích hợp sẵn ADC Sử dụng tính người thiết kế xây dựng nhanh chóng hệ thống chip Bây giờ, bạn thấy cần thiết phải làm ASIC không? Tổng hợp FPGA dễ dàng nhiều lần ASIC Với FPGA, bạn không cần phải floor-planning, công cụ làm điều tốt hiệu Với ASIC, bạn phải làm bước Nhược điểm thiết kế FPGA Công suất tiêu thụ nhiều Bạn cách thức để tối ưu công suất Đây khía cạnh mà ASIC chiến thắng so sánh! Bạn phải sử dụng tài nguyên sẵn FPGA Vì FPGA giới hạn kích thước thiết kế Tốt cho sản xuất sản phẩm Khi số lượng tăng lên, chi phí cao so với ASIC ASIC - Application Specific Intergrated Circuit Ưu điểm thiết kế ASIC Giá … giá … giá … Giá thấp hơn: Đối với đợt sản xuất số lượng lớn giá rẻ Số lượng lớn thiết kế ASIC chắn rẻ thiết kế thực FPGA Tốc độ … ASIC nhanh FPGA: ASIC cho tính linh hoạt cao Điều 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 tối ưu cho thiết kế cần công suất thấp nhiều kỹ thuật công suất thấp như: power gating, clock gating, multi Vt, pipelining, … áp dụng để đạt yêu cầu Đây điểm chí tử FPGA!!! Bạn thử nghĩ xem, điện thoại cần sạc lại pin sau gọi, người dùng 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 thực mạch tương tự số tương tự Điều nói chung FPGA Trong ASIC DFT (Design For Test) chèn vào để kiểm tra phần cứng Đối với FPGA điều không cần Nhược điểm thiết kế ASIC Time-to-market: số dự án ASIC lớn kéo dài năm để thiết kế Cách tốt để rút ngắn thời gian sản phẩm làm sản phẩm thử FPGA sau thực 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 tín hiệu nhiều thứ khác Trong FPGA, bạn không cần làm công việc đó, người thiết kế ASIC làm hết (Đừng quên FPGA người kỹ sư thiết kế ASIC tạo !!) Công cụ đắt: Các công cụ thiết kế ASIC đắt Bạn tốn nhiều tiền cho chi phí FPGA ? FPGA viết tắt thuật ngữ tiếng anh “Field Programmable Gate Array“, dịch sang tiếng việt loại vi mạch dùng cấu trúc mảng phần tử logic lập trình Hay hiểu nôm na loại chip trắng cho phép người dùng tái cấu hình lại kiến trúc theo ý người dùng để thực thi chức cụ thể Để dễ hình dung hơn, biết lập trình vi điều khiển ARM, vi điều khiển (AT89/PIC/MSP430, …) ARM SoC (STM32, …) loại chip thiết kế công nghệ ASIC, tức kiến trúc phần cứng nhà sản xuất thiết kế cố định trình sản xuất, người dùng thay đổi chỉnh sửa Người kĩ sư lập trình ứng dụng lập trình firmware phải nghiên cứu nắm vững kiến trúc loại VĐK để 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 hiểu lập trình phần mềm dựa phần cứng sẵn Còn FPGA, người dùng tự thiết kế lại kiến trúc phần cứng theo ý muốn, kèm theo xây dựng driver tương ứng để phát triển phần mềm ứng dụng giải thuất tối ưu Như vậy, ưu điểm thứ FPGA tính linh động người dùng, giúp phát triển giải pháp tốt mà không phụ thuộc vào phần cứng nhà sản xuất Chúng ta sử dụng FPGA để thiết kế lập trình hầu hết chức mạng số Việc so sánh ưu điểm, khuyết điểm công nghệ FPGA ASIC thảo luận chuyên mục sau Cũng giống vi điều khiển, số lần nạp FPGA không giới hạn Dữ liệu (chương trình) nạp cho FPGA bị mất nguồn (điện) giống RAM máy tính Nếu muốn lưu giữ lại file nạp cần phải nhớ Flash/ROM(do đặc tính loại nhớ lưu liệu cho dù nguồn) để lần bật nguồn, file dạng binary tự động nạp lại vào FPGA Lịch sử FPGA FPGA thiết kế Ross Freeman, người sáng lập công ty Xilinx vào năm 1984 Tiền thân trước FPGA CPLD CPLD cấu trúc từ số lượng định khối SPLD (Simple programmable devices, thuật ngữ chung PAL, PLA) SPLD thường mảng logic AND/OR lập trình kích thước xác định chứa số lượng hạn chế phần tử nhớ đồng (clocked register) Cấu trúc hạn chế khả thực hàm phức tạp hiệu suất không cao Kiến trúc FPGA kiến trúc mảng khối logic, FPGA khả chứa tới từ 100.000 đến hàng vài tỷ cổng logic, CPLD chứa từ 10.000 đến 100.000 cổng logic Một điểm khác biệt với CPLD FPGA đại tích hợp nhiều logic số học tối ưu hóa, hỗ trợ RAM, ROM, tốc độ cao, hay nhân cộng(multiplication and accumulation, MAC), thuật ngữ tiếng Anh DSP slice dùng cho ứng dụng xử lý tín hiệu số DSP Ngoài khả tái cấu trúc vi mạch toàn cục, số FPGA đại hỗ trợ tái cấu trúc cục bộ, tức khả tái cấu trúc phận riêng lẻ (partial configuration) đảm bảo hoạt động bình thường cho phận khác Tại sử dụng FPGA ? Ắt hẳn tìm hiểu công nghệ, thắc mắc lại phải sử dụng FPGA MCU/CPU/DSP mạnh, ứng dụng/trường hợp phải cần đến FPGA giải Để trả lời câu hỏi này, cần phải tìm hiểu sâu cấu tạo kiến trúc FPGA, quy trình thiết kế nào, kiến thức chuyên sâu ứng dụng khác nhau, thảo luận phần sau chuyên mục khác Tuy nhiên, phần muốn giải thích nhấn mạnh ý nghĩa vai trò quan trọng FPGA thiết kế hệ thống số để bạn động lực, hứng thú tìm hiểu FPGA.Thứ nhất, FPGA kiến trúc mảng phần tử logic nên thực thi song song So với vi điều khiển CPU phải thực thi mã lệnh theo dạng Như với FPGA, tăng hiệu suất/năng suất xử lý hệ thống, ứng dụng đòi hỏi phải xử lý tốc độ cao dùng hệ thống làm việc theo thời gian thực.Thứ hai, cấu hình, lập trình lại được, nên FPGA dễ dàng mở rộng ngoại vi giao tiếp với nhiều thiết bị mà MCU ASIC lại hạn chế điểm Thứ ba, nhìn chung ASIC/ASSP hiệu suất cao xét mặt tiêu thụ công suất số lượng cổng Nhưng cần thực thi chức nhỏ đó, chip ASIC/ASSP đòi hỏi công suất tiêu thụ lớn nhiều cổng thực tế yêu cầu Với FPGA, firmware xác định “kích cỡ” ứng dụng, từ giảm số cổng công suất cần tiêu thụ Thứ tư, xét giá thành, FPGA so sánh với ASIC hay SoC, bù lại, với khả tái cấu hình kiến trúc, FPGA đóng vài trò vô to lớn việc giảm giá thành thời gian chế tạo ASIC Để rõ hơn, cần phải biết quy trình thiết kế hai công nghệ FPGA ASIC phải trải qua hai giai đoạn: Front End (ý tưởng, thiết kế mức logic sử dụng ngôn ngữ mô tả phần cứng, kiểm tra mô phần mềm, …) Back End (kiểm tra timing đảm bảo thiết kế hoạt động tần số yêu cầu, layout chip, …) Ở khâu backend này, với FPGA, giai đoạn làm tự động phần mềm nhà sản xuất FPGA tạo file bitstream để nạp xuống FPGA chạy thử nghiệm Còn với ASIC, back end cần tốn nhân lực thời gian lâu Sau đó, toàn thiết kế gửi tới nhà máy sản xuất chip (vd Intel, TSMC, …) để làm chip mẫu với giá thành vài triệu đô la Tiếp đến trình test chip môi trường thực, thất bại phải thực lại từ đầu qui trình vài triệu đô trước xem vứt sọt rác Nhưng với FPGA, giúp rút ngắn thời gian mà giảm tối đa chi phí nghiên cứu, thiết kế thử nghiệm trực tiếp FPGA gần với môi trường ASIC thực Khả tái cấu hình cho phép bạn sửa sửa lại thiết kế đạt yêu cầu mà không tốn xu 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) Test & Measurement (thiết bị kiểm tra đo lường) Industrial IoT (IoT công nghiệp) … FPGA Application Cấu trúc FPGA Kiến trúc FPGA gồm thành phần sau: Khối I/O (hay gọi Pad pin FPGA), Khối kết nối (Interconnection/Switch Matrix), Khối logic cấu hình (CLB – Configurable Logic Blocks) Các khối CLB tổ chức xếp theo mảng theo hướng dọc ngang hình FPGA Architecture Chức thành phần sau: Khối CLB: thực thi chức logic, cung cấp tính toán phần tử nhớ sử dụng hệ thống số CLBs phần tử cấu thành FPGA, nguồn tài nguyên logic tạo nên mạch logic đồng lẫn không đồng Một CLB gồm mạch tổ hợp lập trình (còn gọi LUT), Flip-Flop chốt (latch) LUT(Look up table) khối logic thực hàm logic từ đầu vào (số đầu vào tùy thuộc vào dòng chip hãng thảo luận chi tiết viết khác), kết hàm tùy vào mục đích mà gửi khối logic trực tiếp hay thông qua phần tử nhớ flip-flop Ngoài khối logic đó, nhiều Chip FPGA gồm hỗn hợp khối khác nhau, số dùng cho chức cụ thể, chẳng hạn khối nhớ chuyên dụng, nhân (multipliers) ghép kênh (multiplexers) Tất nhiên, cấu hình nhớ sử dụng tất khối logic để điều khiển chức cụ thể phần tử bên khối Khối kết nối: dùng để liên kết khối logic I/O lại với để tạo thành thiết kế hoàn chỉnh Mạng liên kết FPGA cấu thành từ đường kết nối theo hai phương ngang đứng, tùy theo loại FPGA mà đường kết nối chia thành nhóm khác Các đường kết nối nối với thông qua khối chuyển mạch lập trình (programmable switch), khối chuyển mạch chứa số lượng nút chuyển lập trình đảm bảo cho dạng liên kết phức tạp khác Khối I/O: cung cấp giao tiếp khối logic kiến trúc định tuyến đến thành phần bên Một vấn đề quan trọng thiết kế kiến trúc I/O việc lựa chọn tiêu chuẩn điện áp cung cấp điện áp tham chiếu hỗ trợ Số lượng Pin (I/O) FPGA tương đối lớn, thường chia làm loại: User Pin(chân người dùng), Dedicated Pin (chân chuyên dụng) User Pin: người dùng lập trình đầu vào, đầu đầu vào – Mỗi pin kết nối với “IO Cell” bên FPGA, cấp chân VCCIO (IO power pin) Dedicated Pin: mã hóa cứng với chức cụ thể Power Pin Configuration Pin: pin để cấu hình FPGA Dedicated input, hay Clock Pin: điều khiển mạng lưới clock bên FPGA Voltage IO: cấp nguồn cho cổng logic flip-flops bên FPGA Theo thời gian, kiến trúc FPGA phát triển thông qua việc bổ sung khối chức đặc biệt lập trình, nhớ (Block RAMs), logic số học (ALU), nhân, DSP-48 chí vi xử lý nhúng thêm vào nhu cầu nguồn tài nguyên cho ứng dụng Kết nhiều FPGA ngày nhiều nguồn tài nguyên so với FPGA trước Các nhà sản xuất FPGA & thị phần Trên giới, nay, kể đến tên số hãng FPGA như: Xilinx, Intel (Altera – mua lại Intel năm 2015), Microsemi (Actel), Lattice (Europe), Quick Logic, … Thị phần hãng cập nhật hình sau Code OR gate library ieee; use ieee.std_logic_1164.all; -entity OR_ent is port( x: in std_logic; y: in std_logic; F: out std_logic ); end OR_ent; architecture OR_arch of OR_ent is begin process(x, y) begin compare to truth table if ((x='0') and (y='0')) then F

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