Reconfigurable Computing Lab 02: Seven-Segment Display and Digital Alarm Clock

Similar documents
COMPUTER ENGINEERING PROGRAM

DIGITAL SECURITY SYSTEM USING FPGA. Akash Rai 1, Akash Shukla 2

Design and Implementation of Pipelined Floating Point Fast Fourier Transform Processor

Floating Point Fast Fourier Transform v2.1. User manual

Security Alarm System

Implementing Efficient Split-Radix FFTs in FPGAs

An FPGA Spectrum Sensing Accelerator for Cognitive Radio

CRUSH: Cognitive Radio Universal Software Hardware

International Journal of Advanced Research in Electronics and Communication Engineering (IJARECE) Volume 6, Issue 6, June 2017

A Novel VLSI Based Pipelined Radix-4 Single-Path Delay Commutator (R4SDC) FFT

Praktikum: SystemC. SystemC-Labs. Joachim Falk Friedrich-Alexander-Universität Erlangen-Nürnberg Joachim Falk

Laptop / PC Programming Manual

Methodology of Implementing the Pulse code techniques for Distributed Optical Fiber Sensors by using FPGA: Cyclic Simplex Coding

Cadence Design of clock/calendar using 240*8 bit RAM using Verilog HDL

LYNX SE CENTRAL CONTROL FOR NETWORK GDC. General Specifications

Fire Control Panel FS5100

STUDY OF AUTOMATED HOME SECURITY SYSTEM USING FPGA.

CHAPTER 7 APPLICATION OF 128 POINT FFT PROCESSOR FOR MIMO OFDM SYSTEMS. Table of Contents

Fire Extinguishing Control Panel INSTRUCTION MANUAL. Revision 8/ Instruction Manual Page 1 Revision 8/01.17 of 63

SETTING UP A VIRTUAL KEYPAD WITH A DSC POWERSERIES ALARM SYSTEM

Interactive Fire Control Panel IFS7002 four signal loops Instruction Manual

Exercise 8. Controlling a Batch Mixing Process EXERCISE OBJECTIVE

HB0267 CoreFFT v7.0 Handbook

A Novel Architecture for Radix-4 Pipelined FFT Processor using Vedic Mathematics Algorithm

Tempered Water Logic Control OPERATION l TROUBLE SHOOTING

Monitoring Software for NPBC-V3M-1 User Manual

Interactive Fire Control Panel IFS7002 one signal loop Instruction Manual

GLOBAL. InstallatIon & operation manual

BASIC-Tiger Application Note No. 029 Rev Waking up sleeping tigers. Gunther Zielosko. 1. Basics Real Time Clock

High Speed Reconfigurable FFT Processor Using Urdhava Thriyambakam

OpenCL for FPGAs/HPC Case Study in 3D FFT

[Patil* et al., 5(7): July, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116

Modbus protocol REGO I

FieldServer Driver - Serial FS SBT-FSI (Siemens Building Technologies Foreign Systems Interface)

An Area Efficient 2D Fourier Transform Architecture for FPGA Implementation

IntesisBox BACnet/IP Server - Notifier ID3000 series

Comfort Thermostat Function

IOT Based Intelligent Bin for Smart Cities

RF SCOUT PLUS INSTRUCTION MANUAL. Dielectric, LLC 22 Tower Rd. Raymond, ME Phone: January 2015, Rev B 1

International Journal of Engineering Research-Online A Peer Reviewed International Journal

Operational Concept Description (OCD)

Yokogawa DX Ethernet Driver Help Kepware Technologies

Programming the Cell BE

Owner s Manual. Part Number 33CS250-RC

Dell DR Series Appliance Cleaner Best Practices

E N G L I S H FIRE ALARM ASPIRATION SENSING TECHNOLOGY QUICK INSTALLATION GUIDE STAND-ALONE FAAST LT MODELS FL0111E FL0112E FL0122E. 367 mm.

RCS Residential Control Systems Inc.

Installation Instructions

Sapphire Series TSVW & TWWS Chillwater Digital Thermostats

High-Speed Voice and Data Link Access Multiplexer

Installation, Service, and Troubleshooting Instructions

MT-374B/364B Operation User s Guide. The Anti-Sweat Energy Saving Controller user s manual

INITIALIZATION / INSTALLATION

SmarTemp Control fx 2.0

IndigoVision. GAI-Tronics Integration Module. Administrator's Guide

FlameGard 5 UV/IR HART

DX-9100/9120 Weekly Testing of Dedicated Stairwell Pressurization Fans

Configuration and Operation Manual for the Unipos

Advanced Autoclave Controller with Recording + 4 Channel Mapping + Pressure Indication with PC Software & Printer Module

Feature Summary. I. System

E N G L I S H FIRE ALARM ASPIRATION SENSING TECHNOLOGY QUICK INSTALLATION GUIDE ADDRESSABLE FAAST LT MODELS MI-FL2011EI, MI-FL2012EI AND MI-FL2022EI

Installation, Service, and Troubleshooting Instructions

AUTOMATIC STREET LIGHT CONTROL SYSTEM USING MICROCONTROLLER

Operation Manual Fighter ProVision Software. Version: 0.0 Revision: 1

Weekly Testing of Dedicated Smoke Control Dampers - Metasys System Extended Architecture

RC-112 Two Speed Heat Pump 3 Stage Heat / 2 Stage Cool With Energy Efficient Control

Spectron LSN (Life Safety Network) Suggested Specifications

EFFICIENT ARCHITECTURE FOR PROCESSING OF TWO INDEPENDENT DATA STREAMS USING RADIX-2 FFT

S INTRUSION&FIRE ALARM AND ACCESS CONTROL PANEL

21-light Remote Annunciator. Owner s Manual

1 Air Handling Units In ICE

RC-90 / RC-90B Single Stage Heat/Cool Thermostat for Zone Control Systems Installation Instructions

TECHNICAL MANUAL CVM 20 C 5005 CV/04-99 GB

Weekly Testing of Dedicated Stairwell Pressurization Fans- Metasys System Extended Architecture Code No. LIT

DCA4. Digitally controlled Audio Matrix. Current Thinking. Product Specification March Document Number DDC DCA ACS

WaterLeakStop Manual. Detection and Management of Water Leaks WLS-1

EL-OEM-3 OEM Packaged Voltage Data Logger

Operating Instructions

PBI Manual. Paradox to KNX-BUS Interface

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

AN10943 Decoding DTMF tones using M3 DSP library FFT function

Total Solution Sirius Cooling Control Unit (CCU) Sirius CONFIGURATION TOOL. (Windows -based configuration application.)

Sentient. Downloader Manual D4854

Network Hardware and wiring (quiz)...

LineGuard 2300 Program User Manual (FloBoss 107)

Dashboard for Windows V1.1.0

Appendix 3 Thermostats

P2267 NETWORK INTERFACE

DR Series Appliance Cleaner Best Practices. Technical Whitepaper

Nardalert S3 TM Non-Ionizing Radiation Monitor

We are IntechOpen, the first native scientific publisher of Open Access books. International authors and editors. Our authors are among the TOP 1%

Soft Start Series MP700 Solid State, Reduced Voltage

Alarm Monitoring and Management

Flair 500 Series Annunciators

Owner s Manual. Part Number 33CS250-01

Advanced Systems Security: Linux Security Modules

Plant Security & Fire Alarm Systems. HVAC Systems. Power Plants & Switchyards. Geographical Maps. Industrial Process Plants

Electronic Pellet Burner Controller NPBC-V3-1

CONsOlIDATOR 4 & 8. MulTI- C h ANNEl CONTROllERs. ConsoliDator 4 Model PD940 ConsoliDator 4 Features. ConsoliDator 8 Features.

Fire and Gas Monitoring Panel ST7-HV

Transcription:

Informatik Cauerstr. 98 Erlangen Reconfigurable Computing Lab : Seven-Segment Display and Digital Alarm Clock Problem (Seven-segment display) A seven-segment display consists of seven light emitting diodes (LEDs), which can be turned ON or OFF independently. As shown in Figure, to display a digit between and 9, it is necessary to switch ON and OFF different segments. Figure : Different number representations on a seven-segment display A logic to control a seven-segment display has to be specified in VHDL. This logic has to turn ON segments considering that they are active low. That means, turns a segment ON and a turns it OFF. <= Number <= 9 SSG_ SSG_ SSG_ SSG_ SSG_ SSG_ SSG_ Figure : Block diagram of a controller for a seven-segment display Preparation Complete the following VHDL code for a seven-segment decoder:

LIBRARY IEEE; USE IEEE.STD_LOGIC_.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY sevensegment IS PORT (NUMBER : IN INTEGER RANGE TO 9; DIGIT : OUT STD_LOGIC_VECTOR ( downto )); END sevensegment; ARCHITECTURE behavioral OF sevensegment IS SIGNAL DIGIT_in : STD_LOGIC_VECTOR ( DOWNTO ); BEGIN PROCESS(NUMBER) BEGIN CASE NUMBER is -- WHEN => DIGIT_in <= "";......... WHEN OTHERS => DIGIT_in <= ""; END CASE; END PROCESS; DIGIT <=...; END behavioral; Complete the waveform in Figure. Number 7 8 9 7 8 Digit[:] Digit[] Digit[] Digit[] Digit[] Digit[] Digit[] Digit[] Figure : Waveform of the signals to the seven-segment display

Steps:. Complete the file sevensegment.vhd. Test the functionality by simulating the design with Questa Sim Using a terminal, change from your home directory to /scratch-local/rc/lab Load Questa Sim with the command line: module load modelsim/.c_x8_-pc-linux Start Questa Sim: vsim& Create a new project: File -> New -> Project. Then, Project name: lab and Project location: /scratch-local/rc/lab/ Add the following files to your project: sevensegment.vhd and tb_sevensegment.vhd. Compile all files by selecting the options Compile Order and Auto Generate For starting the simulation, select: Simulate -> Start Simulation. Hence, select the file tb_sevensegment as shown in Fig. Using the VSIM terminal, execute the command lines: do load_waveforms and run -all. Stop the simulation and observe the waveforms from the tab wave. For a better visualization, you can select simulation -> Runtime Options and change the default radix to unsigned. Figure : Start Simulation tab of Questa Sim Problem (Designing a digital alarm clock) A controller for the alarm clock shown in Figure shall be developed. Specification of the alarm clock Inputs Switch S (BTN) to display and set the current time

S Hours Minutes S ALM Time On/Off S Timeset Alarm S S Figure : Alarm Clock Switch S (BTN) to display and set the alarm time Switch S (BTN) to increment hours Switch S (BTN) to increment minutes Switch S (SW7) to activate the alarm Switch S (SW) to reset the board Outputs Four seven-segment displays are used to show the current time or the alarm time One LED shows if the alarm is activated States The controller has three different states as shown in Figure : time: This is the default state. Here, the current time is displayed and if the alarm is equal to the current time, the LED (LD7) is switched ON. set time: This state is reached when S is pressed. Here, if S and S are pressed simultaneously, the hours are incremented. Similarly, if S and S are pressed together, the minutes are incremented. By releasing S, the controller returns to state time. set alarm: This state is reached when S is pressed. If S and S are pressed at the same time, the hours are incremented. However, if S and S are pressed, the minutes are incremented. By releasing S, the controller returns to state time.

else S = S = else set_time time set_alarm else S = S = Figure : State diagram of the digital alarm clock Architecture The alarm clock has to be implemented on the Digilent Spartan- Starter Kit board (see Figure 7). The board contains a Spartan- FPGA (Field Programmable Gate Array). The board is also S S S S S S Figure 7: Digilent Spartan- Starter Kit board [] equipped with four seven-segment displays, four push-buttons, eight switches, eight LEDs, one parallel port, one serial port, one PS interface, and one VGA interface. To implement our alarm clock, the seven-segment displays, the four push buttons, (BTN, BTN, BTN, BTN) and two switches (SW, SW7) will be used. A LED (LD7) will be used as an alarm. We set the following mapping: S BTN, S BTN, S BTN, S BTN, S SW7, S SW, which is used as reset button. The structure of the VHDL design is given in Figure 8. Here are the files for designing the alarm clock: sevensegment.vhd controls one seven segment display and was created in the first part of the lab. Display.vhd presents a number between and on two displays.

LED 7 reset S S S S S FSM Display Display Display Display MUX And Alarm Controller Seven- Segment SSG SSG SSG SSG controller Alarm alarm_clock clk Figure 8: Block diagram of the alarm clock Display.vhd shows a number between and 9 on other two displays. controller.vhd defines a finite state machine for the alarm clock and sets the display variables. MUX and alarm.vhd multiplexes the displays and sets the alarm. alarm clock.vhd is the top hierarchy of the design. alarm clock.ucf is the user constraint file, which defines how inputs and outputs ports of the design are connected to physical pins of the FPGA. Steps Complete the files alarm_clock.vhd and controller.vhd. Simulate the entire design with ModelSim by using tb alarm clock.vhd. Then, use the Xilinx ISE for synthesizing the design and programming the board, as follows:. using a terminal, load the tool ISE: module load ise/._x8_-pc-linux. Start ISE by executing the following command line: ise&. Create a new project for Spartan, device: XCS, package: FT, and speed: -. Add all VHDL and UCF files from /scratch-local/rc/lab/. Note, the testbench files tb_alarm_clock.vhd and tb_sevensegment.vhd are used only for simulation, thus, they cannot be used for synthesis.. Generate the bitstream and use the tool impact to program the board.

References [] Digilent Inc. Spartan- Starter Board. Available at: http://store.digilentinc.com/. 7