inflearn logo

Nhập môn thiết kế FSM | Từ sơ đồ trạng thái đến triển khai 3-process bằng Verilog-HDL

Đây là khóa học miễn phí giúp bạn học một cách có hệ thống về thiết kế FSM (Finite State Machine) — nền tảng của các mạch điều khiển bán dẫn số — từ những kiến thức cơ bản. Thông qua ví dụ Pattern Detector, bạn sẽ từng bước nắm vững quy trình thiết kế thực tế, bao gồm so sánh cấu trúc Moore và Mealy, xây dựng State Diagram, suy ra Truth Table và lập trình Verilog-HDL theo phương pháp 3-Process Coding. Khóa học giúp bạn xây dựng nền tảng lý thuyết thiết yếu về thiết kế phần cứng số như FPGA, CPU RISC-V và NPU AI.

1 học viên đang tham gia khóa học này

Độ khó Nhập môn

Thời gian Không giới hạn

verilog
verilog
diagram
diagram
digital-logic
digital-logic
context-switching
context-switching
rtl
rtl
verilog
verilog
diagram
diagram
digital-logic
digital-logic
context-switching
context-switching
rtl
rtl
Thumbnail

Bạn sẽ nhận được điều này sau khi học.

  • Thiết kế sơ đồ trạng thái FSM và tiêu chí lựa chọn cấu trúc Moore/Mealy

  • Quy trình thiết kế có hệ thống chuyển đổi từ sơ đồ trạng thái, qua bảng chân trị, thành mã Verilog-HDL 3-Process

  • Nguyên tắc lập trình RTL ổn định, bao gồm phòng tránh latch và sử dụng thanh ghi đầu ra

Nhập môn thiết kế FSM | Từ sơ đồ trạng thái đến triển khai 3 quy trình bằng Verilog-HDL

Thiết kế mạch điều khiển của chất bán dẫn kỹ thuật số như thế nào?

Từ đèn giao thông, máy bán hàng tự động, bộ điều khiển truyền thông cho đến CPU và NPU AI, các hệ thống kỹ thuật số đa dạng đều hoạt động theo những điều kiện và trình tự đã định sẵn.

Công nghệ cốt lõi để thiết kế một cách có hệ thống các hoạt động tuần tự này chính là FSM (Finite State Machine, máy trạng thái hữu hạn).

Khóa học này là khóa học lý thuyết thiết kế FSM miễn phí, trong đó bạn sẽ từng bước học từ các khái niệm cơ bản về FSM đến cấu trúc Moore·Mealy, State Diagram, Truth Table và 3-Process Coding trong Verilog-HDL.

Không chỉ đơn thuần ghi nhớ mã FSM, khóa học tập trung vào việc hiểu quy trình thiết kế nối tiếp từ sơ đồ trạng thái → bảng chân trị → mã RTL.


Nội dung học trong khóa học này

Phần 1. Khái niệm cơ bản và cấu trúc của FSM

Tìm hiểu FSM là gì và đóng vai trò như thế nào trong mạch kỹ thuật số.

  • Sự khác nhau giữa mạch tổ hợp và mạch tuần tự

  • Cấu trúc cơ bản và thanh ghi trạng thái của FSM

  • Khái niệm về trạng thái và chuyển trạng thái

  • Các thành phần của Sơ đồ trạng thái

  • Định nghĩa trạng thái và State Encoding sử dụng Pattern Detector 111

Điểm học tập: Hiểu cách biểu diễn hoạt động của hệ thống kỹ thuật số bằng các trạng thái và điều kiện chuyển trạng thái.


Phần 2. FSM Moore và Mealy

So sánh hai cấu trúc tiêu biểu của FSM và tìm hiểu cách lựa chọn cấu trúc phù hợp tùy theo mục đích thiết kế.

  • Cấu trúc và nguyên lý hoạt động của Moore Machine

  • Cấu trúc và nguyên lý hoạt động của Mealy Machine

  • Thời điểm đầu ra và sự khác biệt của Glitch

  • Timing Closure và độ ổn định của đầu ra

  • Sự đánh đổi giữa số lượng trạng thái và tốc độ phản hồi

  • Cấu trúc Hybrid sử dụng Output Register

Điểm học tập: Hiểu sự khác biệt giữa Moore và Mealy, đồng thời nắm được những điểm cần cân nhắc trong thiết kế phần cứng thực tế.


Phần 3. Thiết kế FSM và triển khai Verilog-HDL

Học quy trình thiết kế FSM và biểu diễn bằng mã Verilog-HDL thông qua ví dụ Pattern Detector 111.

  • Lập sơ đồ trạng thái

  • Bảng chân trị Trạng thái kế tiếp và Bảng chân trị Đầu ra

  • Thanh ghi trạng thái, Logic trạng thái kế tiếp, Logic đầu ra

  • Lập trình Verilog-HDL theo cấu trúc 3-Process

  • So sánh cấu trúc 1-Process, 2-Process và 3-Process

  • Nguyên nhân phát sinh Latch và cách phòng tránh

  • Glitch đầu ra và thanh ghi đầu ra

  • Nguyên tắc cốt lõi trong thiết kế FSM

Điểm học tập: Hiểu cách viết mã RTL cho FSM một cách có hệ thống dựa trên sơ đồ trạng thái và bảng chân trị.


Những gì bạn nhận được khi tham gia khóa học

  1. Hiểu cấu trúc và nguyên lý hoạt động của FSM
    Hiểu khái niệm trạng thái và chuyển trạng thái, đồng thời có thể biểu diễn hoạt động điều khiển của hệ thống kỹ thuật số bằng State Diagram.

  2. Hiểu sự khác biệt giữa cấu trúc Moore và Mealy
    Có thể so sánh phương thức đầu ra, tốc độ phản hồi, glitch và các đặc tính về thời gian, đồng thời giải thích những điểm cần cân nhắc khi thiết kế.

  3. Nắm vững phương pháp thiết kế từ sơ đồ trạng thái đến mã RTL
    Học cách lập State Diagram và Truth Table, rồi chuyển chúng sang cấu trúc 3-Process của Verilog-HDL.

  4. Học các nguyên tắc mã hóa FSM đúng
    Hiểu sự khác biệt giữa 1·2·3-Process Coding Style và học các nguyên tắc cơ bản để phòng tránh những vấn đề thiết kế chính như Latch và Glitch ở đầu ra.


Khóa học này được đề xuất cho những người sau

  • Những người muốn học thiết kế FSM sau khi đã học các cú pháp cơ bản của Verilog-HDL

  • Sinh viên đại học và người mới bắt đầu quan tâm đến thiết kế FPGA và triển khai mạch điều khiển số

  • Những người muốn học cách chuyển đổi State Diagram và Truth Table thành mã RTL

  • Dành cho những ai muốn hiểu rõ sự khác biệt giữa FSM Moore và Mealy

  • Những người đang chuẩn bị thiết kế mạch điều khiển cho CPU RISC-V, NPU AI và SoC


Tại sao cần học FSM?

Trong thiết kế phần cứng số, mạch điều khiển cũng quan trọng không kém mạch tính toán.

Khi nào đọc dữ liệu, khi nào bắt đầu tính toán và làm thế nào để xác định kết quả đã sẵn sàng?

FSM được sử dụng để quản lý trình tự hoạt động này.

Đặc biệt, trong FPGA, CPU, NPU và các bộ điều khiển truyền thông, nhiều hoạt động cần được thực hiện theo một trình tự nhất định, vì vậy khả năng thiết kế xác định rõ các trạng thái và điều kiện chuyển đổi là rất quan trọng.

Trong khóa học này, chúng tôi giải thích toàn bộ quy trình thiết kế FSM thông qua một ví dụ đơn giản có tên là Pattern Detector 111.

Bằng cách xem xét một ví dụ duy nhất và kết nối từ sơ đồ trạng thái, bảng chân trị đến mã Verilog-HDL, khóa học được thiết kế để giúp bạn hiểu một cách có hệ thống phương pháp thiết kế FSM.


Hướng dẫn khóa học

Khóa học này là chương trình đào tạo cơ bản miễn phí của Semiconductor School | EdgeChipLab.

Nếu có kiến thức cơ bản về Module, Always, If/Case và logic tổ hợp–tuần tự trong Verilog-HDL, bạn sẽ học dễ dàng hơn. Những ai cần học kiến thức nền trước vui lòng tham gia khóa học miễn phí 「Nhập môn Verilog-HDL dành cho thiết kế bán dẫn số」 trước.

Khóa học này giải thích lý thuyết thiết kế FSM và cấu trúc mã RTL; việc lập trình Verilog-HDL thực tế, mô phỏng Vivado và triển khai trên FPGA sẽ được thực hiện trong khóa thực hành tiếp theo.

Đừng chỉ dừng lại ở việc hiểu khái niệm FSM, hãy rèn luyện tư duy thiết kế bằng cách kết nối sơ đồ trạng thái với bảng chân trị, rồi từ bảng chân trị chuyển thành mã RTL.

Trường học Bán dẫn | EdgeChipLab

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Sinh viên đại học và người mới bắt đầu muốn nắm vững cú pháp cơ bản của Verilog-HDL và mở rộng sang thiết kế FSM

  • Người học đang chuẩn bị triển khai FPGA và các mạch điều khiển kỹ thuật số

  • Kỹ sư quan tâm đến thiết kế CPU RISC-V, NPU AI và mạch điều khiển SoC

Cần biết trước khi bắt đầu?

  • Khái niệm về logic tổ hợp và logic tuần tự trong mạch logic kỹ thuật số

  • Nguyên lý hoạt động cơ bản của Flip-Flop và Clock

  • Kiến thức cơ bản về cú pháp Module, Always, If/Case của Verilog-HDL

Xin chào
Đây là EdgeChipLab

Xác minh sự nghiệp

Trực tiếp thiết kế và triển khai chất bán dẫn AI bằng FPGA

Với tư cách là giáo sư đại học đang công tác, tôi đã đúc kết 30 năm kinh nghiệm trong ngành bán dẫn hệ thống cùng bí quyết nghiên cứu và đào tạo về bán dẫn AI.

Đây là chương trình đào tạo thực tiễn do chính một giáo sư hiện đang giảng dạy kỹ thuật bán dẫn thiết kế và kiểm chứng trên FPGA, với kinh nghiệm bắt đầu từ vị trí nghiên cứu viên bán dẫn hệ thống tại Bộ phận DS của Samsung Electronics, sau đó đảm nhiệm vai trò Director tại các chi nhánh ở Anh và Đức, rồi vị trí trưởng nhóm marketing·kinh doanh System LSI.

Đây không chỉ là khóa học về cách sử dụng FPGA.
Đây là một lộ trình hướng đến việc hiểu thuật toán AI → trực tiếp thiết kế NPU và CPU bằng RTL → triển khai trên FPGA → xác minh trên phần cứng thực tế → cuối cùng mở rộng đến AI SoC.

Thuật toán AI → Thiết kế RTL → Triển khai FPGA → Xác minh Bit-True → AI SoC

 

Vượt qua lý thuyết để triển khai phần cứng AI thực tế

Chỉ với những kiến thức rời rạc và manh mún thì khó có thể đạt được năng lực thiết kế chất bán dẫn AI ở cấp độ hệ thống.

Học viên không chỉ dừng lại ở việc sử dụng các IP hộp đen hoàn chỉnh. Mục tiêu là từng bước trang bị năng lực thiết kế hệ thống, bao gồm việc tự thiết kế NPU AI và CPU RISC-V, tích hợp bộ nhớ và các thiết bị ngoại vi, và cuối cùng xây dựng SoC AI của riêng mình.

Bắt đầu từ những kiến thức cơ bản về transistor và mạch số, khóa học kết nối các nội dung từ FPGA, CPU, NPU đến phần cứng tăng tốc Transformer và LLM.

 

Kiểm chứng kết quả nghiên cứu trên phần cứng FPGA thực tế.

Đây không phải là một khóa học chỉ để xem bằng mắt. Không dừng lại ở lý thuyết hay mô phỏng đơn thuần, bạn sẽ cho mạch bán dẫn AI do chính mình thiết kế hoạt động trên FPGA thực tế và thực hiện kiểm chứng Bit-True, trong đó kết quả của mô hình Python và RTL khớp nhau đến từng bit.

Các kết quả nghiên cứu, bao gồm 4 bài báo được đăng trong KCI liên quan đến chất bán dẫn AI, FPGA và RISC-V của giảng viên cũng được kết nối với nội dung đào tạo, giúp chuyển các công nghệ đã được kiểm chứng trong nghiên cứu thành thiết kế thực tế và triển khai trên FPGA.

Công khai mã nguồn cần thiết cho thực hành, bao gồm CPU RISC-V tự phát triển, mã Python dùng để huấn luyện hình ảnh và Verilog RTL.

Được xây dựng xoay quanh bo mạch FPGA Arty S7-25 phổ thông và công cụ thiết kế Vivado miễn phí, khóa học giúp người học có thể tự mình tái hiện toàn bộ quy trình từ thiết kế, triển khai đến kiểm chứng.

Ngoài ra, cũng có thể sử dụng trên các bo mạch FPGA của Digilent, bao gồm Zybo Z7. Vui lòng điều chỉnh ánh xạ chân XDC (bo mạch) và tham số chia tần số xung nhịp (RTL) cho phù hợp với bo mạch.

'NPU MNIST được tạo bằng FPGA' chỉ cần sửa ánh xạ chân XDC, còn các bài giảng sử dụng OLED và Camera thì cần sửa tham số chia tần số xung nhịp (RTL).

→Phần thực hành của khóa học được thiết lập các tham số chia tần dựa trên xung nhịp đầu vào 100 MHz của Arty S7. Vì các bo mạch khác có xung nhịp đầu vào khác nhau (ví dụ: Zybo Z7 là 125 MHz), bạn cần tính toán lại giá trị chia tần để đạt được cùng tần số mục tiêu. Nếu bỏ qua phần này, màn hình hoặc video sẽ không hiển thị bình thường, nên rất dễ lầm tưởng là lỗi mã; vui lòng kiểm tra kỹ.

 

Lộ trình full-stack liền mạch: từ nền tảng đến bộ tăng tốc mini LLM

Tất cả các bài giảng không phải là những mảnh ghép rời rạc, mà là hành trình hoàn thiện một hệ thống khổng lồ.

  • Step 1: Cơ bản về lý thuyết AI và xử lý hình ảnh (bao gồm Machine Learning)

  • Step 2: Thiết kế và kiểm chứng bộ tăng tốc AI (NPU) (bao gồm Machine Learning)

  • Bước 3: Thiết kế CPU RISC-V và tích hợp hệ thống

  • Bước 4: Triển khai SoC AI nâng cao và mở rộng thành nền tảng tăng tốc mini LLM (liên tục cập nhật nội dung)

     

 

Các chỉ số kiểm chứng khách quan

Tất cả sản phẩm thiết kế của khóa học này đều đã trải qua quá trình kiểm chứng nghiêm ngặt theo các tiêu chuẩn toàn cầu và giới học thuật.

  • Kiểm chứng kiến trúc RISC-V: CPU RISC-V do chúng tôi tự phát triển đã vượt qua bài kiểm tra tuân thủ chính thức (ACT) của quỹ quốc tế và công khai mã nguồn (GitHub)

  • Uy tín học thuật: 4 bài báo học thuật với tư cách tác giả duy nhất (đăng trên tạp chí học thuật danh tiếng IJIBC được KCI xếp hạng A)

  • Được công nhận trên toàn cầu: Đã xuất bản 4 cuốn sách kỹ thuật trên Amazon toàn cầu (đạt vị trí số 1 về doanh số bán chạy nhất)


    Sách đã xuất bản: Roger Kim: sách, tiểu sử, cập nhật mới nhất

  • Hoàn tất xác minh hoạt động thực tế: Các IP cốt lõi như CPU RV32I, NPU, hệ thống thị giác, GPS, Transformer, SoC AURA-Edge đã hoạt động hoàn hảo trong môi trường Arty S7

     

Hãy thử thách bản thân. Khi hoàn thành quá trình tự mình tải mã lên bo mạch và kiểm tra kết quả này, bạn sẽ nâng cấp thành một kỹ sư phần cứng với góc nhìn hoàn toàn khác trước.

Thêm

Chương trình giảng dạy

Tất cả

3 bài giảng ∙ (23phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Khóa học khác của EdgeChipLab

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Miễn phí