Design of serial peripheral interface using System Verilog
SPI (Serial peripheral interface) is a serial communication bus interface. The thesis aims to design an SPI peripheral per industrial standards to operate in a microcontroller environment. The design is done using System Verilog hardware description language. SPI typically uses two data lines (MISO...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Thesis-Master by Coursework |
Language: | English |
Published: |
Nanyang Technological University
2023
|
Subjects: | |
Online Access: | https://hdl.handle.net/10356/165644 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
id |
sg-ntu-dr.10356-165644 |
---|---|
record_format |
dspace |
spelling |
sg-ntu-dr.10356-1656442023-07-04T15:29:17Z Design of serial peripheral interface using System Verilog Jeyaraj Rahul Meng-Hiot Lim School of Electrical and Electronic Engineering Nations Innovation Technologies Pte. Ltd. Technical University of Munich EMHLIM@ntu.edu.sg Engineering::Electrical and electronic engineering::Integrated circuits SPI (Serial peripheral interface) is a serial communication bus interface. The thesis aims to design an SPI peripheral per industrial standards to operate in a microcontroller environment. The design is done using System Verilog hardware description language. SPI typically uses two data lines (MISO and MOSI), one clock line, and one slave selection line for serial communication. One device acts as the master and drives the SCK clock. Other devices work as a slave and respond to the master’s requests synchronously with the master’s clock. The SPI design has the following features. It supports full-duplex, half-duplex, and simplex data transfer modes. The supported data size is 8-bit and 16-bit. The data bit order is configurable, i.e., LSB or MSB can be transferred first. It supports four modes of SCK polarity and phase. Fast data transfer is achieved using DMA. Burst data read and write supported by implementing FIFOs. Serial communication is assisted with CRC for validating the transferred data. All the above configurations and operation modes can be programmed using control registers, and HW status is accessible via status registers. An APB interface is exposed to read and write into the control and status register to work as part of a microcontroller system. The RTL is compiled using Synopsys VCS RTL compiler. The design is unit tested, and the simulated waveform is visualized using Synopsys VCS Verdi tool. Master of Science (Integrated Circuit Design) 2023-04-05T07:59:15Z 2023-04-05T07:59:15Z 2023 Thesis-Master by Coursework Jeyaraj Rahul (2023). Design of serial peripheral interface using System Verilog. Master's thesis, Nanyang Technological University, Singapore. https://hdl.handle.net/10356/165644 https://hdl.handle.net/10356/165644 en application/pdf Nanyang Technological University |
institution |
Nanyang Technological University |
building |
NTU Library |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
NTU Library |
collection |
DR-NTU |
language |
English |
topic |
Engineering::Electrical and electronic engineering::Integrated circuits |
spellingShingle |
Engineering::Electrical and electronic engineering::Integrated circuits Jeyaraj Rahul Design of serial peripheral interface using System Verilog |
description |
SPI (Serial peripheral interface) is a serial communication bus interface. The thesis aims to design an SPI peripheral per industrial standards to operate in a microcontroller environment. The design is done using System Verilog hardware description language. SPI typically uses two data lines (MISO and MOSI), one clock line, and one slave selection line for serial communication. One device acts as the master and drives the SCK clock. Other devices work as a slave and respond to the master’s requests synchronously with the master’s clock. The SPI design has the following features. It supports full-duplex, half-duplex, and simplex data transfer modes. The supported data size is 8-bit and 16-bit. The data bit order is configurable, i.e., LSB or MSB can be transferred first. It supports four modes of SCK polarity and phase. Fast data transfer is achieved using DMA. Burst data read and write supported by implementing FIFOs. Serial communication is assisted with CRC for validating the transferred data. All the above configurations and operation modes can be programmed using control registers, and HW status is accessible via status registers. An APB interface is exposed to read and write into the control and status register to work as part of a microcontroller system. The RTL is compiled using Synopsys VCS RTL compiler. The design is unit tested, and the simulated waveform is visualized using Synopsys VCS Verdi tool. |
author2 |
Meng-Hiot Lim |
author_facet |
Meng-Hiot Lim Jeyaraj Rahul |
format |
Thesis-Master by Coursework |
author |
Jeyaraj Rahul |
author_sort |
Jeyaraj Rahul |
title |
Design of serial peripheral interface using System Verilog |
title_short |
Design of serial peripheral interface using System Verilog |
title_full |
Design of serial peripheral interface using System Verilog |
title_fullStr |
Design of serial peripheral interface using System Verilog |
title_full_unstemmed |
Design of serial peripheral interface using System Verilog |
title_sort |
design of serial peripheral interface using system verilog |
publisher |
Nanyang Technological University |
publishDate |
2023 |
url |
https://hdl.handle.net/10356/165644 |
_version_ |
1772827674755989504 |