Giáo trình thực hành Nhập môn Máy tính: Triển khai Cổng logic trên FPGA

Hướng dẫn thực hành phòng thí nghiệm máy tính về cổng logic cơ bản và mạch tích hợp chức năng trên FPGA. Khám phá kiến thức và kỹ năng cần thiết.

Trường đại học

Trường Đại Học

Chuyên ngành

Kỹ Thuật Máy Tính

Người đăng

Ẩn danh

Thể loại

Sổ Tay Thực Hành

2023

80
3
0

Phí lưu trữ

30 Point

Tóm tắt

I. Hướng dẫn thực thi cổng logic và IC chức năng trên FPGA

Việc chuyển đổi từ thiết kế mạch lý thuyết sang hiện thực hóa vật lý là một kỹ năng nền tảng trong lĩnh vực kỹ thuật điện tử. Sổ tay thí nghiệm này, đặc biệt là bài thực hành về thực thi cổng logic cơ bản và IC chức năng trên FPGA, cung cấp một lộ trình chi tiết để sinh viên nắm vững quy trình này. Trọng tâm của tài liệu là trang bị cho người học khả năng triển khai các hệ thống tổ hợp và tuần tự, không chỉ trên breadboard truyền thống mà còn trên nền tảng FPGA (Field-Programmable Gate Array) hiện đại. Mục tiêu chính là làm quen với việc sử dụng ngôn ngữ mô tả phần cứng SystemVerilog để thiết kế, mô phỏng và tổng hợp mạch số. Quá trình này bắt đầu bằng việc hiểu rõ các hàm Boolean và các cổng logic cơ bản, sau đó tiến tới việc tích hợp các IC chức năng phức tạp hơn như bộ ghép kênh (Multiplexer) và bộ giải mã (Decoder). Việc thực hành trên các bộ công cụ như Kit DE2 và phần mềm Intel Quartus giúp thu hẹp khoảng cách giữa lý thuyết và ứng dụng thực tiễn, một yêu cầu cốt lõi được nhấn mạnh trong tài liệu gốc của Đại học Bách Khoa TP.HCM.

1.1. Giới thiệu vai trò của FPGA trong thiết kế mạch số

FPGA, hay Mảng Cổng Lập trình được, đại diện cho một bước tiến vượt bậc so với các phương pháp thiết kế mạch số truyền thống sử dụng IC rời và breadboard. Thay vì kết nối vật lý từng linh kiện, FPGA cho phép các kỹ sư mô tả chức năng của mạch bằng các ngôn ngữ mô tả phần cứng như SystemVerilog hoặc VHDL. Thiết kế này sau đó được "biên dịch" và nạp vào chip FPGA, nơi nó cấu hình lại các tài nguyên logic có sẵn để thực hiện chính xác chức năng mong muốn. Ưu điểm lớn nhất của FPGA là tính linh hoạt và khả năng tái cấu trúc. Một thiết kế có thể được thay đổi, sửa lỗi và nạp lại chỉ trong vài phút mà không cần thay đổi phần cứng vật lý. Điều này làm cho FPGA trở thành nền tảng lý tưởng cho việc tạo mẫu nhanh, nghiên cứu và phát triển các hệ thống phức tạp, từ xử lý tín hiệu số đến trí tuệ nhân tạo.

1.2. Tổng quan về ngôn ngữ mô tả phần cứng SystemVerilog

SystemVerilog là một ngôn ngữ mô tả và xác minh phần cứng được sử dụng rộng rãi trong ngành công nghiệp vi mạch. Nó là phiên bản mở rộng của Verilog, bổ sung thêm nhiều tính năng mạnh mẽ cho cả thiết kế và kiểm thử. Trong khuôn khổ sổ tay thí nghiệm, SystemVerilog được dùng để mô hình hóa hoạt động của các cổng logic (AND, OR, NOT, NAND), các mạch số phức tạp hơn và các IC chức năng như 74LS151 (Multiplexer) và 74LS138 (Decoder). Sinh viên sẽ học cách viết các module, khai báo đầu vào/đầu ra và sử dụng các câu lệnh gán liên tục (assign) để mô tả logic tổ hợp. Ví dụ, việc triển khai hàm 𝑓(𝑥, 𝑦, 𝑧) = x'yz được thực hiện đơn giản bằng một dòng mã, thể hiện sức mạnh và sự súc tích của ngôn ngữ này trong việc biến các biểu thức hàm Boolean thành cấu trúc phần cứng.

II. So sánh thực thi trên FPGA và breadboard Ưu nhược điểm

Trước khi công nghệ FPGA trở nên phổ biến, breadboard là công cụ không thể thiếu để sinh viên hiện thực hóa các mạch số. Lab 1 trong sổ tay thí nghiệm tập trung hoàn toàn vào việc triển khai hàm Boolean trên breadboard bằng các IC logic họ 74LS. Tuy nhiên, phương pháp này tồn tại nhiều thách thức cố hữu. Việc đi dây thủ công rất tốn thời gian, dễ xảy ra lỗi kết nối và khó khăn trong việc gỡ rối. Khi mạch trở nên phức tạp, số lượng dây nối và IC tăng lên nhanh chóng, khiến breadboard trở nên lộn xộn và không ổn định. Ngược lại, việc thực thi cổng logic và IC chức năng trên FPGA, như được trình bày trong Lab 2, giải quyết triệt để các vấn đề này. Thiết kế được thực hiện trên phần mềm, cho phép mô phỏng và kiểm tra kỹ lưỡng trước khi nạp lên phần cứng. Điều này giúp giảm thiểu lỗi, tăng tốc độ phát triển và cho phép xây dựng các hệ thống có quy mô lớn hơn nhiều. Sự đối lập giữa hai phương pháp này làm nổi bật cuộc cách mạng trong thiết kế điện tử, từ thủ công sang tự động hóa.

2.1. Phân tích hạn chế của IC rời và kết nối trên breadboard

Việc triển khai mạch trên breadboard với các IC chức năng rời rạc (ví dụ: 74LS04, 74LS08, 74LS32) có nhiều hạn chế. Thứ nhất, mỗi IC chỉ chứa một vài cổng logic, do đó các mạch phức tạp đòi hỏi nhiều IC, chiếm diện tích lớn và tiêu thụ nhiều năng lượng. Thứ hai, quá trình kết nối thủ công bằng dây cắm rất dễ gây ra lỗi như cắm sai chân, kết nối lỏng lẻo hoặc ngắn mạch. Việc tìm và sửa các lỗi này (debugging) là một công việc tốn nhiều công sức. Thứ ba, việc thay đổi hay nâng cấp thiết kế đòi hỏi phải đi dây lại toàn bộ hoặc một phần mạch, làm giảm tính linh hoạt. Tài liệu gốc cũng nhấn mạnh các quy tắc khi thao tác với IC và breadboard, như cách cắm IC để tránh nối tắt các chân, cho thấy sự phức tạp và rủi ro tiềm ẩn của phương pháp này.

2.2. Lợi ích vượt trội của FPGA Linh hoạt và tái cấu trúc

FPGA mang lại lợi ích vượt trội so với breadboard. Toàn bộ thiết kế, dù đơn giản như một cổng logic hay phức tạp như một bộ vi xử lý, đều được chứa trong một con chip duy nhất. Điều này giúp hệ thống nhỏ gọn, đáng tin cậy và hiệu quả hơn về năng lượng. Quá trình thiết kế dựa trên mã SystemVerilog cho phép tái sử dụng các module, dễ dàng quản lý các phiên bản và tự động hóa quy trình kiểm tra. Quan trọng nhất là khả năng tái cấu trúc. Nếu một thiết kế có lỗi hoặc cần được cập nhật, kỹ sư chỉ cần sửa đổi mã, biên dịch lại và nạp chương trình mới vào FPGA. Quá trình này chỉ mất vài phút, cho phép chu kỳ lặp lại thiết kế cực kỳ nhanh chóng, điều không thể thực hiện được với breadboard.

III. Hướng dẫn thiết kế mạch số trên FPGA với SystemVerilog

Quy trình thực thi cổng logic và IC chức năng trên FPGA là một chuỗi các bước được chuẩn hóa, sử dụng các công cụ phần mềm chuyên dụng. Tài liệu hướng dẫn sinh viên sử dụng bộ công cụ Intel Quartus để thực hiện toàn bộ quá trình, từ viết mã đến nạp chương trình lên kit DE2. Bước đầu tiên là tạo một project mới và viết mã SystemVerilog để mô tả hoạt động của mạch. Mã này định nghĩa các đầu vào, đầu ra và mối quan hệ logic giữa chúng, hay còn gọi là mô tả RTL (Register-Transfer Level). Sau khi viết mã, bước tiếp theo là biên dịch (compilation) và tổng hợp (synthesis). Trong giai đoạn này, Quartus sẽ phân tích mã, tối ưu hóa logic và ánh xạ thiết kế vào các tài nguyên phần cứng cụ thể có sẵn trên chip FPGA. Quá trình này đảm bảo thiết kế không chỉ đúng về mặt chức năng mà còn hiệu quả về mặt tài nguyên. Toàn bộ quy trình này là nền tảng cho mọi thiết kế số hiện đại.

3.1. Các bước mô hình hóa logic tổ hợp trong SystemVerilog

Mô hình hóa logic tổ hợp trong SystemVerilog là kỹ năng cơ bản đầu tiên cần nắm vững. Một mạch tổ hợp là mạch mà đầu ra tại bất kỳ thời điểm nào cũng chỉ phụ thuộc vào giá trị đầu vào tại chính thời điểm đó. Trong SystemVerilog, điều này thường được thực hiện bằng các phép toán logic (& cho AND, | cho OR, ~ cho NOT) và câu lệnh assign. Ví dụ, để triển khai hàm Boolean f = (x' & y) | (y' & z), ta chỉ cần viết assign f = (~x & y) | (~y & z);. Tài liệu hướng dẫn sinh viên cách tạo một module, định nghĩa các cổng inputoutput, và viết các biểu thức logic để kết nối chúng. Cách tiếp cận này cho phép mô tả trực tiếp các phương trình logic rút gọn từ bìa Karnaugh hoặc đại số Boole vào phần cứng.

3.2. Quy trình tổng hợp và mô phỏng mạch dùng Intel Quartus

Sau khi mô tả mạch bằng SystemVerilog, bước tiếp theo là sử dụng Intel Quartus để mô phỏng và tổng hợp. Mô phỏng (simulation) là quá trình kiểm tra chức năng của thiết kế bằng cách áp dụng các tín hiệu đầu vào giả định và quan sát dạng sóng đầu ra. Điều này giúp phát hiện các lỗi logic trước khi triển khai lên phần cứng. Sau khi mô phỏng thành công, quá trình tổng hợp (synthesis) sẽ chuyển đổi đoạn mã mô tả mức cao thành một danh sách kết nối (netlist) các cổng logic và flip-flop ở mức thấp. Quartus sẽ tự động tối ưu hóa mạch để đạt được hiệu suất tốt nhất. Kết quả của quá trình này có thể được xem trực quan thông qua công cụ RTL Viewer, cho thấy sơ đồ khối của mạch đã được tổng hợp.

3.3. Kỹ thuật gán chân và nạp chương trình lên kit DE2

Bước cuối cùng trong quy trình là kết nối thiết kế logic với các chân vật lý của chip FPGA trên kit DE2. Quá trình này được gọi là gán chân (pin assignment). Ví dụ, sinh viên cần chỉ định các tín hiệu đầu vào x, y, z trong mã SystemVerilog tương ứng với các công tắc vật lý (SW0, SW1, SW2) và tín hiệu đầu ra f tương ứng với một đèn LED (LEDR0) trên bo mạch. Việc gán chân được thực hiện thông qua công cụ Pin Planner trong Quartus. Sau khi hoàn tất, Quartus sẽ tạo một tệp chương trình (.sof). Tệp này sau đó được nạp vào kit DE2 thông qua công cụ Programmer, hoàn tất việc thực thi cổng logic từ ý tưởng thành một sản phẩm vật lý hoạt động.

IV. Cách mô phỏng IC chức năng 74LS151 và 74LS138 trên FPGA

Một trong những ứng dụng mạnh mẽ của FPGA là khả năng tái tạo hoạt động của các IC chức năng tiêu chuẩn. Thay vì sử dụng các IC vật lý, chúng ta có thể viết mã SystemVerilog để mô tả chính xác hành vi của chúng và tích hợp vào thiết kế lớn hơn. Sổ tay thí nghiệm tập trung vào hai IC tổ hợp quan trọng: 74LS151 (Bộ ghép kênh 8 sang 1) và 74LS138 (Bộ giải mã 3 sang 8). Việc mô phỏng các IC này không chỉ giúp sinh viên hiểu sâu hơn về hoạt động bên trong của chúng mà còn là một bài tập thực tế về thiết kế module hóa. Một module 74LS151 hoặc 74LS138 được viết một lần và có thể được tái sử dụng trong nhiều project khác nhau. Cách tiếp cận này là nền tảng của thiết kế hệ thống trên chip (SoC) hiện đại, nơi các khối IP (Intellectual Property) phức tạp được kết nối với nhau để tạo ra một hệ thống hoàn chỉnh.

4.1. Thiết kế bộ ghép kênh Multiplexer 74LS151 bằng mã

Thí nghiệm 4 trong Lab 2 yêu cầu triển khai một hàm Boolean bằng cách sử dụng bộ ghép kênh 74LS151. Để làm điều này, trước tiên cần viết một module SystemVerilog mô tả hoạt động của 74LS151. Module này sẽ có 8 đầu vào dữ liệu (D0-D7), 3 đầu vào lựa chọn (A, B, C) và một đầu ra (Y). Logic bên trong module sẽ sử dụng các đầu vào lựa chọn để quyết định đầu vào dữ liệu nào sẽ được chuyển đến đầu ra. Sau khi module IC_74LS151 được tạo, nó có thể được gọi ra trong thiết kế chính (top-level module) như một linh kiện boîte noire (hộp đen). Việc triển khai hàm Boolean 𝑓(𝑥, 𝑦, 𝑧) = ∑(1,2,4,7) lúc này chỉ đơn giản là kết nối các hằng số 0 và 1 vào các chân D0-D7 của module IC_74LS151 tương ứng với bảng chân trị của hàm.

4.2. Xây dựng bộ giải mã Decoder 74LS138 như một module

Tương tự như bộ ghép kênh, Thí nghiệm 5 yêu cầu sử dụng bộ giải mã 74LS138 để hiện thực hóa một hàm Boolean. Module SystemVerilog cho 74LS138 sẽ có 3 đầu vào địa chỉ (A, B, C) và 8 đầu ra tích cực mức thấp (Y0-Y7). Với một tổ hợp đầu vào địa chỉ cụ thể, chỉ một trong tám đầu ra sẽ ở mức thấp (0), trong khi các đầu ra còn lại ở mức cao (1). Sau khi module IC_74LS138 được thiết kế và kiểm thử, việc triển khai hàm 𝑓(𝑥, 𝑦, 𝑧) = ∑(0,2,5,7) trở nên đơn giản. Chỉ cần lấy các đầu ra tương ứng (Y0, Y2, Y5, Y7) của bộ giải mã và kết hợp chúng lại bằng một cổng logic phù hợp (ví dụ: cổng NAND để tổng hợp các minterm) để tạo ra đầu ra cuối cùng.

V. Phân tích kết quả thực thi hàm Boolean và logic tổ hợp

Mục tiêu cuối cùng của các bài thí nghiệm là xác minh rằng thiết kế hoạt động chính xác cả trong mô phỏng và trên phần cứng thực tế. Sổ tay thí nghiệm yêu cầu sinh viên ghi lại kết quả một cách có hệ thống vào các bảng chân trị. Các bảng này thường có các cột cho giá trị lý thuyết (f), giá trị mô phỏng (fSim), và giá trị trên kit (fKit). Việc so sánh các cột này là bước quan trọng để xác nhận tính đúng đắn của toàn bộ quy trình, từ việc rút gọn hàm Boolean đến viết mã SystemVerilog và nạp lên FPGA. Bất kỳ sự khác biệt nào giữa các cột đều chỉ ra một lỗi tiềm tàng ở một trong các giai đoạn. Ngoài ra, việc sử dụng các công cụ phân tích của Quartus như RTL Viewer cung cấp một cái nhìn sâu sắc về cách mà đoạn mã mô tả cấp cao được phần mềm tổng hợp thành một cấu trúc mạch cổng logic cụ thể, giúp củng cố kiến thức về mối liên hệ giữa phần mềm và phần cứng.

5.1. Đối chiếu kết quả mô phỏng và thực nghiệm trên kit DE2

Sau khi nạp tệp chương trình lên kit DE2, sinh viên phải kiểm tra hoạt động của mạch một cách thực tế. Bằng cách thay đổi các công tắc (SW) tương ứng với đầu vào x, y, z và quan sát trạng thái của đèn LED tương ứng với đầu ra f, sinh viên có thể điền vào cột fKit trong bảng chân trị. Lý tưởng nhất, cột fKit phải hoàn toàn trùng khớp với cột fSim (kết quả từ dạng sóng mô phỏng) và cột f (giá trị tính toán theo lý thuyết). Quá trình này không chỉ xác nhận thiết kế hoạt động đúng mà còn giúp sinh viên làm quen với việc tương tác với phần cứng vật lý, một kỹ năng thiết yếu cho một kỹ sư điện tử. Nếu có sự sai khác, nguyên nhân có thể đến từ việc gán chân sai hoặc lỗi trong file nạp.

5.2. Cách dùng RTL Viewer để kiểm tra cấu trúc mạch tổng hợp

RTL Viewer là một công cụ mạnh mẽ trong Intel Quartus, cho phép người dùng xem một biểu diễn dạng sơ đồ khối của thiết kế sau khi được tổng hợp. Thay vì chỉ nhìn vào các dòng mã SystemVerilog, sinh viên có thể thấy trực quan mạch được tạo thành từ các cổng logic, bộ ghép kênh, và các khối logic khác. Trong sổ tay thí nghiệm, sinh viên được yêu cầu so sánh sơ đồ mạch tự vẽ tay với kết quả hiển thị trên RTL Viewer. Thông thường, mạch do Quartus tối ưu hóa có thể khác về cấu trúc nhưng tương đương về chức năng. Việc phân tích sơ đồ này giúp hiểu rõ hơn về cách công cụ tổng hợp diễn giải mã và thực hiện các phép tối ưu hóa logic, chẳng hạn như loại bỏ các logic thừa hoặc tái cấu trúc các biểu thức để giảm độ trễ.

VI. Tương lai của thiết kế hệ thống số và vai trò của FPGA

Việc nắm vững kỹ năng thực thi cổng logic và IC chức năng trên FPGA không chỉ là yêu cầu của một môn học mà còn là sự chuẩn bị cho tương lai của ngành thiết kế hệ thống số. Các hệ thống điện tử hiện đại ngày càng trở nên phức tạp, tích hợp hàng triệu, thậm chí hàng tỷ cổng logic trên một con chip duy nhất. FPGA và các ngôn ngữ mô tả phần cứng như SystemVerilog là những công cụ cốt lõi cho phép các kỹ sư quản lý sự phức tạp này. Các kỹ năng học được từ sổ tay thí nghiệm này, bao gồm thiết kế module, mô phỏng, tổng hợp và xác minh trên phần cứng, là những kỹ năng có thể áp dụng trực tiếp vào việc thiết kế các hệ thống trên chip (SoC), các bộ tăng tốc phần cứng cho AI, và các hệ thống xử lý tín hiệu tốc độ cao. Đây là nền tảng vững chắc cho sự nghiệp của các kỹ sư điện tử và máy tính trong kỷ nguyên số.

6.1. Xu hướng phát triển của công nghệ FPGA và SystemVerilog

Công nghệ FPGA đang phát triển không ngừng, với các dòng chip mới có mật độ logic cao hơn, tốc độ nhanh hơn và tích hợp sẵn các lõi xử lý cứng (hard processor cores) như ARM. Xu hướng này cho phép xây dựng các hệ thống nhúng phức tạp hoàn toàn trên một chip FPGA. Song song đó, SystemVerilog cũng tiếp tục phát triển, đặc biệt là trong lĩnh vực xác minh (verification) với các phương pháp luận như UVM (Universal Verification Methodology). Việc nắm vững các khái niệm cơ bản về mô tả phần cứng được trình bày trong sổ tay này sẽ là bước đệm để tiếp cận các công nghệ và phương pháp luận tiên tiến này trong tương lai.

6.2. Tầm quan trọng của kỹ năng thiết kế trên FPGA cho kỹ sư

Trong thị trường lao động hiện nay, kỹ năng thiết kế trên FPGA được đánh giá rất cao. Các công ty trong lĩnh vực viễn thông, tự động hóa, hàng không vũ trụ, và điện tử tiêu dùng đều cần các kỹ sư có khả năng tạo mẫu và phát triển sản phẩm nhanh chóng. Kỹ năng làm việc với FPGA, SystemVerilog, và các công cụ EDA (Electronic Design Automation) như Intel Quartus là một lợi thế cạnh tranh lớn. Các bài thí nghiệm trong tài liệu này cung cấp chính xác những kinh nghiệm thực tiễn đầu tiên, giúp sinh viên xây dựng một danh mục các project nhỏ nhưng hoàn chỉnh, chứng minh năng lực của mình với các nhà tuyển dụng trong tương lai.

15/07/2025

Trích đoạn nội dung tài liệu

VIET NAM NATIONAL UNIVERSITY HO CHI MINH CITY – UNIVERSITY OF TECHNOLOGY FACULTY OF ELECTRICAL AND ELECTRONICS ENGINEERING DEPARTMENT OF ELECTRONICS --oOo— INTRODUCTION TO COMPUTING LABORATORY MANUAL TABLE OF CONTENT ABOUT THE MANUAL. 1 LAB 1: IMPLEMENTATION OF BOOLEAN FUNCTION ON BREADBOARD WITH LOGIC GATES AND FUNCTIONAL ICS. IMPLEMENTATION OF DIGITAL CIRCUIT ON BREADBOARD .13 LAB 2: IMPLEMENTATION OF BASIC LOGIC GATES AND FUNCTIONAL ICs ON FPGA .34 APPENDIX 1: QUARTUS AND UBUNTU INSTALLATION ON WINDOWS. UBUNTU INSTALLATION ON WINDOWS:.

Download and install Xming and WSL2:. Install Ubuntu on Windows:. Some basic commands in Linux.53 APPENDIX 2: DIGITAL CIRCUIT DESIGN FLOW USING SYSTEMVERILOG. COMBINATIONAL LOGIC MODELING .55 Electronics Department Ho Chi Minh City University of Technology, Vietnam 1 II.

SEQUENTIAL LOGIC/FSM MODELING .70 Electronics Department Ho Chi Minh City University of Technology, Vietnam 2 ABOUT THE MANUAL This document is intended to serve as a lab manual for students enrolled in Introduction to Computing Lab at HCMC University of Technology. All the Lab Experiment is designed for students to: - Implement combinational and sequential systems on testboard, using digital ICs. - Implement digital systems on FPGA, using SystemVerilog. There are 4 labs: Lab 1 – Implementation of Boolean function on breadboard with Logic Gates and Functional ICs.

Lab 2 – Implementation of Boolean function on FPGA with Logic Gates and Functional Digital ICs. Lab 3 – Implement Arithmetic Circuits and Sequential Circuit on breadboard. Lab 4 – Implement Arithmetic Circuits and Sequential Circuit on FPGA. In order to complete the lab on time, all students are required to do prelabs before each class.

Electronics Department Ho Chi Minh City University of Technology, Vietnam 1 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs LAB 1:IMPLEMENTATION OF BOOLEAN FUNCTION ON BREADBOARD WITH LOGIC GATES AND FUNCTIONAL ICS Student’s name: Class: Student ID: Date: A. IMPLEMENTATION OF DIGITAL CIRCUIT ON BREADBOARD Breadboard is the component on which the circuits can be set up and external experiments can be done. The information about usage is given in Figure 1.1: Breadboard connections ❖ Remember these points when implement digital circuits on breadboard: - Inserting a DIP – Dual Inline Package: Before you insert a DIP into the breadboard, make sure all pins are straight. When you insert a DIP in the breadboard, make sure that the pins on one side of the DIP are not connected to the pins on the other side of the DIP.

This means that the DIP must straddle one of the long gaps that divide the breadboard into separate sections. - Providing access to the DIP: Electronics Department Ho Chi Minh City University of Technology, Vietnam 2 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs As you wire your circuit, be sure to leave yourself easy access to the DIP's pins so that you can touch them with a probe and so that you can replace the DIP without disconnecting any wires. In particular:  Never pass a wire over a DIP. Instead, route the wires around the DIP.

 When you run wires to a DIP, use the breadboard holes farther away from the DIP before you use the holes that are closer. - Removing a DIP: Do not use your fingers to remove a DIP from the breadboard. It's too easy for your fingers to slip, causing the DIP to twist. This results in bent pins.

Instead, use a chip puller to gently pull the chip up from the board. - Input and output connections: There are two logic levels of input data: HIGH (1) level and LOW (0) level. In this course, almost digital ICs are TTL, in which HIGH level and LOW level are prescribed as below: Input: the signal is called HIGH when the voltage is between 2V and 5V, and LOW when the voltage is from 0 to 0. Output: the signal is called HIGH when the voltage is between 2.7V and 5V, and LOW when the voltage is from 0 to 0.

We usually apply 5V to implement HIGH level signal and 0V for LOW level signal. In this lab, DIP switches are used to supply input signal. Several ways of input connections are shown in Figure 1.2; resistors in these circuits are usually chosen 10 Kohm. It is recommended that students implement input circuit as in Figure 1.2 (c), in which the signal equal 1 when the switch is at upper position and vice versa.2: Input connections Electronics Department Ho Chi Minh City University of Technology, Vietnam 3 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs Outputs are commonly displayed in LEDs, bar-LEDs, 7-segment LEDs,… Figure 1.3 shows how to connect the output to LED; LEDs in the left circuit will be on when the signal is 1 while level 1 signal turn off the lights in the right circuit.

Resistors in output circuits are usually chosen 1 Kohm.3: Output connections Example: Implement function 𝑓(𝑎, 𝑏) = 𝑎 + 𝑏.4: Implementation of Boolean function F(a,b) = a + b Electronics Department Ho Chi Minh City University of Technology, Vietnam 4 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs Figure 1.5: Implementation of Boolean function F(a,b) = a + b – application circuit. Electronics Department Ho Chi Minh City University of Technology, Vietnam 5 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs II. What is numbering principle in DIP IC? 2. Identify X, Y, Z, W in four circuits below: 3.

If f1,f2,f3,f4 are respectively 0,1,1,0. Indentify status of each LEDs in below figure. Hoàn thành bảng sau (xem datasheet của chúng) IC Definition Pins 74LS00 4 cổng NAND 14-VCC; 7-GND; 3 = 1 nand 2; 6 = 4 nand 5; ……. Electronics Department Ho Chi Minh City University of Technology, Vietnam 6 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 74LS02 74LS04 74LS08 74LS32 74LS86 74LS125 74LS126 74LS138 74LS151 5.

Compare IC 74LS125 and IC 74LS126. Explain the difference between these 2 ICs. Implement boolean function 𝑓(𝑥, 𝑦, 𝑧) = 𝑥. 𝑦 + 𝑦𝑧: ICs and quantity: Circuit implementation (remember to note pin numbers on ICs) Electronics Department Ho Chi Minh City University of Technology, Vietnam 7 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 7.

Implement boolean function 𝑓(𝑥, 𝑦, 𝑧) = 𝑥. 𝑦 + 𝑦𝑧 using NAND2 gates (2-input NAND gates). Convert the function using NAND equivalents: Circuit implementation (remember to note pin numbers on ICs) 8. Implement Boolean function 𝑓(𝑥, 𝑦, 𝑧) = m1 + m3 + m6 (z is LSB): Electronics Department Ho Chi Minh City University of Technology, Vietnam 8 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs Write F in SOP form: List all ICs used to implement the circuit: Circuit implementation (remember to note pin numbers on ICs) 9.

Implement boolean function 𝑓(𝑥, 𝑦, 𝑧) = m1 + m3 + m6, using NOR2 gates (2-input NOR gates) Convert the function using NOR equivalents: Circuit implementation (remember to note pin numbers on ICs) Electronics Department Ho Chi Minh City University of Technology, Vietnam 9 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 10. Given following circuit: Write 𝑓(𝑥, 𝑦, 𝑧) expression in SOP Circuit implementation (remember to note pin numbers on ICs) Electronics Department Ho Chi Minh City University of Technology, Vietnam 10 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 11. Electronics Department Ho Chi Minh City University of Technology, Vietnam 11 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 12. Electronics Department Ho Chi Minh City University of Technology, Vietnam 12 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs B.

OBJECTIVES: - Getting familiar with TTL 74LS series IC. - Implementation of simplified Boolean functions with different logic gate combinations. - Getting to know functional combinational ICs. LAB PREPARATION: Students have to complete Prelab before class.

Students without lab preparation won’t be allowed to join in the class. LAB INSTRUCTION: EXPERIMENT 1 Objectives: Implementation of a function math 𝑓(𝑥, 𝑦, 𝑧) = 𝑥. 𝑦 + 𝑦𝑧 in AND – OR form. Equipments: - Analog Discovery Studio - Integrated Circuits (ICs) : 74LS04, 74LS08, 74LS32 - Connection wires.

Procedure: - Construct the circuit and apply the power (remember to note pin numbers on ICs). - Apply all possible combinations to the inputs; obtain the output values then take note of the output fTest in the Table 1. x y z f fTest fnand 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Table 1.1 Electronics Department Ho Chi Minh City University of Technology, Vietnam 13 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs Student’s implementation on breadboard: ➢ Draw the schematic that implement F using NAND equipvalents. NAND equipvalent circuit – application circuit.

Electronics Department Ho Chi Minh City University of Technology, Vietnam 14 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs - Construct the circuit and apply the power (remember to note pin numbers on ICs). - Apply all possible combinations to the inputs and obtain and take note of the outputs fNAND in the Table 1.1 Student’s implementation on breadboard EXPERIMENT 2 Objectives: Implementation of a boolean function given in the truth table (Figure 1. Equipments: - Analog Discovery Studio - Integrated Circuits (ICs) : 74LS04, 74LS08, 74LS32 - Connection wires. Procedure: Electronics Department Ho Chi Minh City University of Technology, Vietnam 15 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs - Construct the circuit and apply the power (remember to note pin numbers on ICs).

- Apply all possible combinations to the inputs; obtain the output values then take note of the output fTest in the Table 1. - Write the Boolean expression: F = x y z f fTest fnor 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 Table 1.2 Electronics Department Ho Chi Minh City University of Technology, Vietnam 16 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs Student’s implementation on breadboard ➢ Draw the schematic that implement F using NOR equipvalents. NOR equipvalent circuit – application circuit. Electronics Department Ho Chi Minh City University of Technology, Vietnam 17 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs - Construct the circuit and apply the power (remember to note pin numbers on ICs).

- Apply all possible combinations to the inputs; obtain the output value then take note of the outputs fNOR in the Table 1. Student’s implementation on breadboard EXPERIMENT 3 Objectives: Implementation of a boolean function given in the following schematic.6 Equipments: - Analog Discovery Studio - Integrated Circuits (ICs) : 74LS04, 74LS08, 74LS32, 74LS86. Procedure: - Construct the circuit and apply the power (remember to note pin numbers on ICs). - Apply all possible combinations to the inputs; obtain the output value then take note of the outputs F1 in the Table 1.

x y z F1 F2 Electronics Department Ho Chi Minh City University of Technology, Vietnam 18 Lab 1: Implementation of Boolean function on breadboard with logic gates and functional ICs 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Table 1.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ