Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

195 total results found

Implementation

RISC-V Processor

The design was made in Verilog, primarily targeting the von Braun Labs’ DevChipBoard, containing the Tang Nano 9k board, running at a base frequency of 27MHz. The RISC-V core is composed of a simple datapath and a multicycle control unit (with up to 4 states)....

Visual Resources

RISC-V Processor

Figure 1: Basic Datapath   Figure 2: Datapath with Control Signals   Figure 3: Flash Read Command   Figure 4: Processor Cycles   Figure 5: Tang Nano 9k   

Understanding the UART Protocol

UART Protocol

UART (Universal Asynchronous Receiver-Transmitter) is a widely used asynchronous serial communication protocol for exchanging data between devices, such as FPGAs and computers. Unlike synchronous protocols, UART does not use a shared clock signal. Instead, da...

Creating Your Project in ChipInventor

UART Protocol

In this tutorial, you will create a serial communication system using UART with three main blocks: uart_rx, uart_logic_const, and uart_tx. When a character is received via UART, the system compares it with a predefined value and toggles an LED if it matches. ...

Blocks Used in the Project

UART Protocol

The project uses the following blocks based on the provided Verilog modules: uart_rx: Responsible for receiving data from the UART port and indicating when a byte has been completely received. uart_logic_const: Compares the received byte with a prede...

Connecting the Blocks

UART Protocol

Assemble the project with the following configuration: uart_rx Block Inputs: clk → system clock uartRx → UART input pin Outputs: rxByte → connects to the logic block byteReady → connects to both the logic block and uart_tx uart_logic_co...

Project Simulation

UART Protocol

Go to the Simulate tab in the top menu. Select Advanced Simulation. Click on Run Iverilog to compile and simulate. Check if the simulation runs without errors. If errors occur, review the block connections as described.

FPGA Synthesis and Programming

UART Protocol

Once the simulation is validated: 1. Go to the Synthesize tab. 2. Click Start Synthesis. 3. Connect your FPGA to the computer via USB. 4. Select the correct serial port (usually labeled “Enhanced”). 5. Click Flashing to program the FPGA.  

Hardware Validation

UART Protocol

1. Access the Main tab. 2. Click on Serial Console. 3. Set the baud rate to 115200. 4. Send a character via the serial terminal. If the character matches the predefined value (8’h61), the LED should toggle. The same character will also be sent back thro...

Wrapping Up

UART Protocol

Congratulations! You’ve implemented a complete UART system with receiving, comparison, and data echo. This practice reinforces your understanding of serial communication, logical comparison, and module integration in FPGA using ChipInventor. Try experimenting...

Introduction to the I2C Protocol

I2C Protocol

The I2C (Inter-Integrated Circuit) protocol is one of the most used communication protocols in embedded systems. It allows communication between multiple devices using only two lines: SDA (Serial Data) → Bidirectional data line. SCL (Serial Clock) → ...

Creating the Project in ChipInventor

I2C Protocol

In this tutorial, we will create a project that uses the I2C protocol to read data from an ADC (Analog-to-Digital Converter). Initial Steps: 1. Access the ChipInventor website. 2. Click on New Project. 3. Fill in the information: Name: I2C Communication...

Understanding the Project Blocks

I2C Protocol

The main blocks used in this project are: Block Function startAll Generates the initial signal for the system to start operating. i2c Controls the I2C communication, performing read and write operations. ...

Assembling the Blocks in ChipInventor

I2C Protocol

Below are the connections that must be made between the blocks: Block: startAll Input: clk → System clock. Output: start → Start signal. Block: i2c Inputs: clk → System clock. start → Output from startAll block. instruction → Oper...

Project Simulation

I2C Protocol

Access the Simulate tab. Click Advanced Simulation. Click Menu → Run Iverilog. Check for errors. If necessary, correct the blocks and connections.  

FPGA Synthesis and Programming

I2C Protocol

Access the Synthesis tab. Click Start Synthesis. If all items turn green, connect your FPGA to the PC. Select the correct port. Click Flashing to program the project.  

Hardware Validation

I2C Protocol

With the system programmed, perform the tests: View the values read from the ADC. Validate if the I2C protocol is working correctly by observing the received data.  

Wrapping Up

I2C Protocol

Congratulations! You have developed a complete I2C communication project using the ChipInventor platform. Now that you understand the I2C protocol, you can expand this knowledge and implement communication with other sensors and devices.  

SPI Protocol Overview

SPI Protocol

SPI (Serial Peripheral Interface) is a synchronous, full-duplex communication protocol used for high-speed data exchange over short distances. It follows a master–slave architecture with four primary signals: SCLK (Serial Clock): Clock signal generated by...

Creating the Project in ChipInventor

SPI Protocol

1. Open ChipInventor. 2. Click New Project. 3. Fill in the fields: Name: SPI Communication Tutorial Description: SPI Master–Slave Data Transfer with LED Display Type: FPGA 4. Click Create.