APPENDIX 1 SINUSOIDAL PULSE WIDTH MODULATION
|
|
- Hector Fisher
- 5 years ago
- Views:
Transcription
1 120 APPENDIX 1 SINUSOIDAL PULSE WIDTH MODULATION % A Program For Analysis of SINUSOIDAL PULSE WIDTH MODULATION of Inverter Fed AC Drive % Signal. % By: R.Rajran % Date 08/06/2011 % clear all disp('sinusoidal Pulse Width Modulation of AC Signal') disp(' ') % % PART II % In this part the already known variables are entered, the user is % asked to enter the other variables. % Vrin is the rms value of the input supply voltage in per unit. Vrin=1; % f is the frequency of the input supply voltage. f=input('the frequency of the input supply voltage, f = '); % Z is the load impedance in per unit. Z=1; % ma is the modulation index ma=input('the modulation index,ma, (0<ma<1), ma = '); % phi is load-phase-angle phi=input('the phase angle of the load in degrees = '); % Q is the number of pulses per half-period of the supply voltage.
2 121 Q=input('The number of pulses per half period = '); % % PART III % Calculating load parameters. % phi=phi*pi/180; % R and L are the load resistance and inductance respectively. R=Z*cos(phi); L=(Z*sin(phi))/(2*pi*f); % % PART IV % Calculating the number of pulses per period,n N=2*Q; % %PART V for k=1:2*n for j=1:50 % finding the generalized time counter i=j+(k-1)*50; % finding the time step wt(i)=i*pi/(n*50); % calculating the input supply voltage. Vin(i)=sqrt(2)*Vrin*sin(wt(i)); ma1(i)=ma*abs(sin(wt(i))); % calculating the sawtooth waveform if rem(k,2)==0 Vt(i)=0.02*j; if abs(vt(i)-ma*abs(sin(wt(i))))<=0.011 m=j; beta(fix(k/2)+1)=3.6*((k-1)*50+m)/n; else
3 122 j=j; else Vt(i)=1-0.02*j; if abs(vt(i)-ma*abs(sin(wt(i))))<0.011 l=j; alpha(fix(k/2)+1)=3.6*((k-1)*50+l)/n; else j=j; if Vt(i)>ma*abs(sin(wt(i))) Vout(i)=0; else Vout(i)=Vin(i); beta(1)=[]; subplot(3,1,2) plot(wt,vt,wt,ma1,wt,a) axis([0,2*pi,-2,2]) ylabel('vt, m(pu)'); subplot(3,1,3) plot(wt,vout,wt,a) axis([0,2*pi,-2,2]) ylabel('vo(pu)'); xlabel('radian');
4 123 % PART VIII % Analyzing the output voltage waveform % Finding the rms value of the output voltage Vo =sqrt(1/(length(vout))*sum(vout.^2)); disp('the rms Value of the Output Voltage ') Vo % finding the harmonic contents of the output voltage waveform y=fft(vout); y(1)=[]; x=abs(y); x=(sqrt(2)/(length(vout)))*x; disp('the rms Value of the output voltage fundamental component = ') x(1) % Findint the THD of the output voltage THDVo = sqrt(vo^2 -x(1)^2)/x(1); % PART IX % calculating the output current waveform m=r/(2*pi*f*l); DT=pi/(N*50); C(1)=-10; i=100*n+1:2000*n; Vout(i)=Vout(i-100*N*fix(i/(100*N))+1); for i=2:2000*n; C(i)=C(i-1)*exp(-m*DT)+Vout(i-1)/R*(1-exp(-m*DT));
5 124 %PART XIV figure(2) subplot(3,2,1) plot(wt,vout(1:100*n),wt,a); title(''); axis([0,2*pi,-1.5,1.5]); ylabel('vo(pu)'); % subplot(3,2,2) plot(x(1:100)) title(''); axis([0,100,0,0.8]); ylabel('von(pu)'); subplot(3,2,3) plot(wt,c(1900*n+1:2000*n),wt,a); title(''); axis([0,2*pi,-1.5,1.5]); ylabel('io(pu)'); subplot(3,2,4) plot(cox(1:100)) title(''); axis([0,100,0,0.8]); ylabel('ion(pu)');
6 125 APPENDIX 2 SPACE VECTOR MODULATION % A program for SVPWM of Inverter Fed Induction motor Drive warning off; clc; clear all; phir=0.96; wref=input('refernce speed='); V=220; I=14.8; P=5*746; F=60; Lls=1.9e-3;
7 126 Llr=1.9e-3; Lm=41.2e-3; N=1750; Rs=0.6; Rr=0.41; p=4; Ls=Lls+Lm; Lr=Llr+Lm; %parameters eta=rr/lr; sigma=(1-lm^2/(ls*lr)); k3=1/(sigma*ls); k2=rs/(sigma*ls); k1=k3*lm/lr; %control parameters u0=1; u=0.002;
8 127 APPENDIX 2 FIELD ORIENTED CONTROL OF INDUCTION MOTOR DRIVE S Function Code for Induction Motor static void mdinitializesampletimes(simstruct *S) sssetsampletime(s,0, CONTINUOUS_SAMPLE_TIME); sssetoffsettimes(s,0,0,0); static void mdlinitializeconditions(real_t*x0,simstauct *s int i; for(i=0;i<4;i++) *x0++=0.0; static void mdloutputs(real_t*y, const real_t *x, const real_t *u)
9 128 double lm; int po; lm=mxgetpr(lm) [0]; po=mxgetpr(p0) [0]; y[0]=x[0]; y[1]=x[1]; y[2]=x[2]; y[3]=x[3]; y[4]=x[4]; y[4]=0.75*po*lm*(x[2]*x[1]-x[3]*x[0]); static void mdlupdate(const real_t *dx, const real_t *x, const real_t *u, SimStrauct *S) static void mdlderivative(const real_t *dx, const real_t *x, const real_t *u, SimStrauct *S) double lr,ls,rr,rs,lm,a: lm=mxgetpr(lm)[0]; lr=mxgetpr(lr) [0]; ls=mxgetpr(ls)[0]; rr=mxgetpr(rr) [0]; rs=mxgetpr(rs)[0]; static void mdlterminate(simstruct *s)
10 129 APPENDIX 4 CONVENTIONAL DIRECT TORQUE CONTROL OF INDUCTION MOTOR DRIVE S-Function code for voltage vector selection table static void mdinitializesampletimes(simstruct *S) sssetsampletime(s,0, CONTINUOUS_SAMPLE_TIME); sssetoffsettimes(s,0,0,0); static void mdlinitializeconditions(real_t*x0,simstauct *s int i;
11 130 for(i=0;i<4;i++) *x0++=0.0; static void mdloutputs(real_t*y, const real_t *x, const real_t *u) double lm; int po; lm=mxgetpr(lm) [0]; po=mxgetpr(p0) [0]; y[0]=x[0]; y[1]=x[1]; y[2]=x[2]; y[3]=x[3]; y[4]=x[4]; y[4]=0.75*po*lm*(x[2]*x[1]-x[3]*x[0]); static void mdlupdate(const real_t *dx, const real_t *x, const real_t *u, SimStrauct *S) static void mdlderivative(const real_t *dx, const real_t *x, const real_t *u, SimStrauct *S) double lr,ls,rr,rs,lm,a: lm=mxgetpr(lm)[0]; lr=mxgetpr(lr) [0]; ls=mxgetpr(ls)[0]; rr=mxgetpr(rr) [0]; rs=mxgetpr(rs)[0]; static void mdlterminate(simstruct *s)
12 131 APPENDIX 5 PROPOSED SVM-DTC OF INDUCTION MOTOR DRIVE function [sys,x0,str,ts]=volvector(t,x,u,flag) switch flag %%%%%%%%%%%%%%%%%%%%%% Initialization %%%%%%%%% case 0 [sys,x0,str,ts]=mdlinitializesizes; %%%%%%%%%%%%%%%%%%%%%%%%%% Derivatives,Update and Terminate %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% case 1,2,9 sys=[]; case 3 sys=mdloutputs(t,x,u);
13 132 otherwise error(['unhandled flag=',num2str(flag)]); %================================================= %mdlinitializesizes %Return the sizes, initial conditions, and sample time for the s-function %================================================== function[sys,x0,str,ts]=mdlinitializesizes sizes=simsizes; sizes.numcontstates=0; sizes.numdiscstates=0; sizes.numoutputs=3; sizes.dirfeedthrough=1; sizes.numsampletimes=1; sys=simsize(sizes); str=[]; x0=[]; ts=[0 0]; function sys=mdloutputs(t,x,u) if(u(1)==1 & u(2)==0 & u(3)==1) sys(1)=1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=1; elseif(u(1)==1&u(2)==0 & u(3)==1) sys(1)=1; sys(3)=1; elseif(u(1)==1&u(2)==1 & u(3)==1) sys(1)=1;
14 133 elseif(u(1)==0&u(2)==1 & u(3)==1) sys(1)=1; elseif(u(1)==1&u(2)==1 & u(3)==1) sys(1)=-1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=-1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=-1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=-1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=-1; elseif(u(1)==0&u(2)==0 & u(3)==1) sys(1)=-1; sys(2)=-1; elseif(u(1)==1&u(2)==0 & u(3)==2) sys(1)=1;
15 134 elseif(u(1)==2&u(2)==1 & u(3)==1) sys(1)=1; elseif(u(1)==1&u(2)==1 & u(3)==1) sys(1)=1;
16 135 APPENDIX 6 XILINX SYSTEM GENERATOR ISE PROJECT NAVIGATOR
17 136 APPENDIX 7 SYNTHESIS REPORT Release xst M.70d (nt) Copyright (c) Xilinx, Inc. All rights reserved. --> Parameter TMPDIR set to xst/projnav.tmp Total REAL time to Xst completion: 1.00 secs Total CPU time to Xst completion: 0.25 secs --> Parameter xsthdpdir set to xst Total REAL time to Xst completion: 1.00 secs Total CPU time to Xst completion: 0.25 secs --> Reading design: jc2_top.prj TABLE OF CONTENTS 1) Synthesis Options Summary 2) HDL Compilation 3) Design Hierarchy Analysis 4) HDL Analysis 5) HDL Synthesis 5.1) HDL Synthesis Report 6) Advanced HDL Synthesis 6.1) Advanced HDL Synthesis Report 7) Low Level Synthesis 8) Partition Report 9) Final Report * Synthesis Options Summary * ---- Source Parameters Input File Name : "SVM-DTC" Input Format : mixed Ignore Synthesis Constraint File : NO ---- Target Parameters Output File Name : "jc2_top" Output Format : NGC Target Device : XC9500XL CPLDs ---- Source Options
18 137 Top Module Name Automatic FSM Extraction FSM Encoding Algorithm Safe Implementation Mux Extraction Resource Sharing ---- Target Options Add IO Buffers MACRO Preserve XOR Preserve Equivalent register Removal : jc2_top : YES : Auto : No : Yes : YES : YES : YES : YES : YES ---- General Options Optimization Goal : Speed Optimization Effort : 1 Keep Hierarchy : Yes Netlist Hierarchy : As_Optimized RTL Output : Yes Hierarchy Separator : / Bus Delimiter : <> Case Specifier : Maintain Verilog 2001 : YES ---- Other Options Clock Enable : YES wysiwyg : NO * HDL Compilation * Compiling vhdl file "C:/Documents and Settings/user/jc2_vhd/jc2_top.vhd" in Library work. Entity <jc2_top> compiled. Entity <jc2_top> (Architecture <jc2_top_arch>) compiled. * Design Hierarchy Analysis * Analyzing hierarchy for entity <jc2_top> in library <work> (architecture <jc2_top_arch>). * HDL Analysis *
19 138 Analyzing Entity <jc2_top> in library <work> (Architecture <jc2_top_arch>). Entity <jc2_top> analyzed. Unit <jc2_top> generated. * HDL Synthesis * Performing bidirectional port resolution... Synthesizing Unit <jc2_top>. Related source file is "C:/Documents and Settings/user/jc2_vhd/jc2_top.vhd". Found 1-bit register for signal <DIR>. Found 4-bit register for signal <Q_int>. Found 1-bit register for signal <RUN>. Summary: inferred 4 D-type flip-flop(s). Unit <jc2_top> synthesized. HDL Synthesis Report Macro Statistics # Registers : 6 1-bit register : 6 * Advanced HDL Synthesis * Advanced HDL Synthesis Report Macro Statistics # Registers : 4 Flip-Flops : 4 * Low Level Synthesis * Optimizing unit <jc2_top>... implementation constraint: INIT=r : Q_int_0 implementation constraint: INIT=r : Q_int_1 implementation constraint: INIT=r : Q_int_2 implementation constraint: INIT=r : Q_int_3 implementation constraint: INIT=r : RUN implementation constraint: INIT=r : DIR
20 139 ======================================================* Partition Report * Partition Implementation Status No Partitions were found in this design. * Final Report * Final Results RTL Top Level Output File Name : jc2_top.ngr Top Level Output File Name : jc2_top Output Format : NGC Optimization Goal : Speed Keep Hierarchy : Yes Target Technology : XC9500XL CPLDs Macro Preserve : YES XOR Preserve : YES Clock Enable : YES wysiwyg : NO Design Statistics # IOs : 8 Cell Usage : # BELS : 24 # AND2 : 8 # GND : 1 # INV : 9 # OR2 : 6 # FlipFlops/Latches : 6 # FDCE : 6 # IO Buffers : 8 # IBUF : 4 # OBUF : 4 Total REAL time to Xst completion: 3.00 secs Total CPU time to Xst completion: 2.98 secs --> Total memory usage is kilobytes Number of errors : 0 ( 0 filtered) Number of warnings : 0 ( 0 filtered) Number of infos : 0 ( 0 filtered)
21 140 APPENDIX 8 VHDL CODE library IEEE; use IEEE.std_logic_1164.all; -- defines std_logic types entity jc2_top is port ( LEFT : in STD_LOGIC; -- Active-low switch #3 (left) RIGHT : in STD_LOGIC; -- Active-low switch #0 (right) STOP : in STD_LOGIC; -- Active-low switch #2 CLK : in STD_LOGIC; Q : out STD_LOGIC_VECTOR (3 downto 0) -- Active-low LEDs ); --To pass pin location constraints from this HDL source file rather than --through a User Constraints Format (UCF) file, uncomment the six attribute --declarations below and remove jc2_top.ucf from the project. -- attribute pin_assign : string; -- attribute pin_assign of clk : signal is "A7"; -- attribute pin_assign of left : signal is "G7"; -- attribute pin_assign of right : signal is "B2"; -- attribute pin_assign of stop : signal is "F2"; -- attribute pin_assign of q : signal is "G5 F6 C6 B4"; jc2_top; architecture SVMDTC_arch of jc2_top is signal DIR : STD_LOGIC := '0'; -- Left=1, Right=0 signal RUN : STD_LOGIC := '0'; signal Q_int : STD_LOGIC_VECTOR (3 downto 0) := "0000"; -- Internal signal driving Q output; Active-low LEDs begin process (CLK, RIGHT, LEFT, STOP, RUN, DIR, Q_int) begin if (CLK'event and CLK='1') then -- CLK rising edge -- DIR register: if (RIGHT='0') then DIR <= '0';
22 141 elsif (LEFT='0') then DIR <= '1'; if; -- RUN register: if (STOP='0') then RUN <= '0'; elsif (LEFT='0' or RIGHT='0') then RUN <= '1'; if; architecture LPF of jc2_top is signal DIR : STD_LOGIC := '0'; -- Left=1, Right=0 signal RUN : STD_LOGIC := '0'; signal Q_int : STD_LOGIC_VECTOR (3 downto 0) := "0000"; -- Internal signal driving Q output; Active-low LEDs begin process (CLK, RIGHT, LEFT, STOP, RUN, DIR, Q_int) begin if (CLK'event and CLK='1') then -- CLK rising edge -- DIR register: if (RIGHT='0') then DIR <= '0'; elsif (LEFT='0') then DIR <= '1'; if; -- RUN register: if (STOP='0') then RUN <= '0'; elsif (LEFT='0' or RIGHT='0') then RUN <= '1'; if; architecture PI_arch of jc2_top is signal DIR : STD_LOGIC := '0'; -- Left=1, Right=0 signal RUN : STD_LOGIC := '0'; signal Q_int : STD_LOGIC_VECTOR (3 downto 0) := "0000"; -- Internal signal driving Q output; Active-low LEDs begin
23 142 process (CLK, RIGHT, LEFT, STOP, RUN, DIR, Q_int) begin if (CLK'event and CLK='1') then -- CLK rising edge -- DIR register: if (RIGHT='0') then DIR <= '0'; elsif (LEFT='0') then DIR <= '1'; if; -- RUN register: if (STOP='0') then RUN <= '0'; elsif (LEFT='0' or RIGHT='0') then RUN <= '1'; if; architecture EST_arch of jc2_top is signal DIR : STD_LOGIC := '0'; -- Left=1, Right=0 signal RUN : STD_LOGIC := '0'; signal Q_int : STD_LOGIC_VECTOR (3 downto 0) := "0000"; -- Internal signal driving Q output; Active-low LEDs begin process (CLK, RIGHT, LEFT, STOP, RUN, DIR, Q_int) begin if (CLK'event and CLK='1') then -- CLK rising edge -- DIR register: if (RIGHT='0') then DIR <= '0'; elsif (LEFT='0') then DIR <= '1'; if; -- RUN register: if (STOP='0') then RUN <= '0'; elsif (LEFT='0' or RIGHT='0') then RUN <= '1'; if;
24 Counter section: if (RUN='1') then if (DIR='1') then Q_int(3 downto 1) <= Q_int(2 downto 0); -- Shift lower bits (Left Shift) Q_int(0) <= not Q_int(3); -- Circulate inverted MSB to LSB else Q_int(2 downto 0) <= Q_int(3 downto 1); -- Shift upper bits (Right Shift) Q_int(3) <= not Q_int(0); if; if; if; Q <= Q_int; process; -- Circulate inverted LSB to MSB jc2_top_arch;
25 144 APPENDIX 9 DETAILS OF HARWARE SET UP INDUCTION MOTOR Parameters of Induction Motor Power Rating 1 kw Number of Poles 4 Stator Resistance 10.9 Rotor Resistance 9.5 Stator Self Inductance 0.879H Rotor Self Inductance 0.879H Mutual Inductance 0.878H Moment of Inertia kg-m 2 Hall-Effect Current Sensor Spartan 3E FPGA Board Analog to Digital Converter (ADC) Gate Drivers and Voltage Source Inverter NI DAQ Card LabVIEW Software
Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 10/25/16
1 Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 10/25/16 The following is a general outline of steps (i.e. design flow) used to implement a digital system described with
More informationLogic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 11/01/17
1 Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 11/01/17 The following is a general outline of steps (i.e. design flow) used to implement a digital system described with
More informationCCE 3202 Advanced Digital System Design
CCE 3202 Advanced Digital System Design Lab Exercise #2 This lab exercise will show you how to create, synthesize, and test a 3-bit ripple counter. A ripple counter is simply a circuit that outputs the
More informationAsynchronous FIFO Design
Asynchronous FIFO Design 2.1 Introduction: An Asynchronous FIFO Design refers to a FIFO Design where in the data values are written to the FIFO memory from one clock domain and the data values are read
More informationField Programmable Gate Array
Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational
More informationCCE 3202 Advanced Digital System Design
CCE 3202 Advanced Digital System Design Lab Exercise #2 Introduction You will use Xilinx Webpack v9.1 to allow the synthesis and creation of VHDLbased designs. This lab will outline the steps necessary
More informationDesign Problem 5 Solution
CSE 260 Digital Computers: Organization and Logical Design Design Problem 5 Solution Jon Turner Due 5/3/05 1. (150 points) In this problem, you are to extend the design of the basic processor to implement
More informationPALMiCE FPGA Probing Function User's Manual
PALMiCE FPGA Probing Function User's Manual This manual describes the probing function and presents the basic usage patterns. Chapter1 Introducing the Probing Function The probing function makes it easy
More informationFPGA briefing Part II FPGA development DMW: FPGA development DMW:
FPGA briefing Part II FPGA development FPGA development 1 FPGA development FPGA development : Domain level analysis (Level 3). System level design (Level 2). Module level design (Level 1). Academical focus
More informationInferring Storage Elements
Inferring Storage Elements In our designs, we usually use flip-flops as our storage elements. Sometimes we use latches, but not often. Latches are smaller in size, but create special, often difficult situations
More informationOutline. CPE/EE 422/522 Advanced Logic Design L05. Review: General Model of Moore Sequential Machine. Review: Mealy Sequential Networks.
Outline CPE/EE 422/522 Advanced Logic Design L05 Electrical and Computer Engineering University of Alabama in Huntsville What we know Combinational Networks Sequential Networks: Basic Building Blocks,
More informationCPE 626 Advanced VLSI Design Lecture 6: VHDL Synthesis. Register File: An Example. Register File: An Example (cont d) Aleksandar Milenkovic
CPE 626 Lecture 6: VHDL Synthesis Aleksandar Milenkovic http://www.ece.uah.edu/~milenka http://www.ece.uah.edu/~milenka/cpe626-04f/ milenka@ece.uah.edu Assistant Professor Electrical and Computer Engineering
More informationVHDL: Modeling RAM and Register Files. Textbook Chapters: 6.6.1, 8.7, 8.8, 9.5.2, 11.2
VHDL: Modeling RAM and Register Files Textbook Chapters: 6.6.1, 8.7, 8.8, 9.5.2, 11.2 Memory Synthesis Approaches: Random logic using flip-flops or latches Register files in datapaths RAM standard components
More informationPROJECT REPORT - UART
Tanvi Shama 200601196 Akshay Soni 200601148 DAIICT PROJECT REPORT - UART Digital System Architecture 2 Project Report - UART S.No Topic Page No. 1. PROJECT STATEMENT 3 2. FUNCTIONAL SPECIFICATIONS INTRODUCTION
More informationHardware Description Language VHDL (1) Introduction
Hardware Description Language VHDL (1) Introduction Digital Radiation Measurement and Spectroscopy NE/RHP 537 Introduction Hardware description language (HDL) Intended to describe circuits textually, for
More informationFSM Components. FSM Description. HDL Coding Methods. Chapter 7: HDL Coding Techniques
FSM Components XST features: Specific inference capabilities for synchronous Finite State Machine (FSM) components. Built-in FSM encoding strategies to accommodate your optimization goals. You may also
More information1 ST SUMMER SCHOOL: VHDL BOOTCAMP PISA, JULY 2013
MARIE CURIE IAPP: FAST TRACKER FOR HADRON COLLIDER EXPERIMENTS 1 ST SUMMER SCHOOL: VHDL BOOTCAMP PISA, JULY 2013 Introduction to VHDL Calliope-Louisa Sotiropoulou PhD Candidate/Researcher Aristotle University
More informationAssignment. Last time. Last time. ECE 4514 Digital Design II. Back to the big picture. Back to the big picture
Assignment Last time Project 4: Using synthesis tools Synplify Pro and Webpack Due 11/11 ning of class Generics Used to parameterize models E.g., Delay, bit width Configurations Configuration specification
More informationVHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language
VHDL Introduction to Structured VLSI Design VHDL I Very High Speed Integrated Circuit (VHSIC) Hardware Description Language Joachim Rodrigues A Technology Independent, Standard Hardware description Language
More informationVHDL And Synthesis Review
VHDL And Synthesis Review VHDL In Detail Things that we will look at: Port and Types Arithmetic Operators Design styles for Synthesis VHDL Ports Four Different Types of Ports in: signal values are read-only
More informationPart 4: VHDL for sequential circuits. Introduction to Modeling and Verification of Digital Systems. Memory elements. Sequential circuits
M1 Informatique / MOSIG Introduction to Modeling and erification of Digital Systems Part 4: HDL for sequential circuits Laurence PIERRE http://users-tima.imag.fr/amfors/lpierre/m1arc 2017/2018 81 Sequential
More informationTwo HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design
Two HDLs used today Introduction to Structured VLSI Design VHDL I VHDL and Verilog Syntax and ``appearance'' of the two languages are very different Capabilities and scopes are quite similar Both are industrial
More informationSequential Logic - Module 5
Sequential Logic Module 5 Jim Duckworth, WPI 1 Latches and Flip-Flops Implemented by using signals in IF statements that are not completely specified Necessary latches or registers are inferred by the
More informationCS211 Digital Systems/Lab. Introduction to VHDL. Hyotaek Shim, Computer Architecture Laboratory
CS211 Digital Systems/Lab Introduction to VHDL Hyotaek Shim, Computer Architecture Laboratory Programmable Logic Device (PLD) 2/32 An electronic component used to build reconfigurable digital circuits
More informationFPGA Design Flow 1. All About FPGA
FPGA Design Flow 1 In this part of tutorial we are going to have a short intro on FPGA design flow. A simplified version of FPGA design flow is given in the flowing diagram. FPGA Design Flow 2 FPGA_Design_FLOW
More informationLecture 3: Modeling in VHDL. EE 3610 Digital Systems
EE 3610: Digital Systems 1 Lecture 3: Modeling in VHDL VHDL: Overview 2 VHDL VHSIC Hardware Description Language VHSIC=Very High Speed Integrated Circuit Programming language for modelling of hardware
More informationAbi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University
Hardware description language (HDL) Intended to describe circuits textually, for a computer to read Evolved starting in the 1970s and 1980s Popular languages today include: VHDL Defined in 1980s by U.S.
More informationSummary of FPGA & VHDL
FYS4220/9220 Summary of FPGA & VHDL Lecture #6 Jan Kenneth Bekkeng, University of Oslo - Department of Physics 16.11.2011 Curriculum (VHDL & FPGA part) Curriculum (Syllabus) defined by: Lectures Lecture6:
More informationPINE TRAINING ACADEMY
PINE TRAINING ACADEMY Course Module A d d r e s s D - 5 5 7, G o v i n d p u r a m, G h a z i a b a d, U. P., 2 0 1 0 1 3, I n d i a Digital Logic System Design using Gates/Verilog or VHDL and Implementation
More informationDESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL
Arid Zone Journal of Engineering, Technology and Environment. August, 2013; Vol. 9, 17-26 DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL Dibal, P.Y. (Department of Computer Engineering,
More informationVHDL for Modeling - Module 10
VHDL for Modeling Module 10 Jim Duckworth, WPI 1 Overview General examples AND model Flip-flop model SRAM Model Generics DDR SDRAM Model Constraints Metastability Block Statements Just for reference Jim
More informationDesign Problem 4 Solution
CSE 260 Digital Computers: Organization and Logical Design Design Problem 4 Solution Jon Turner Due 4/13/06 1. (125 points). In this problem, you will design a packet FIFO, which is a circuit that temporarily
More informationSchedule. ECE U530 Digital Hardware Synthesis. Rest of Semester. Midterm Question 1a
ECE U530 Digital Hardware Synthesis Prof. Miriam Leeser mel@coe.neu.edu November 8, 2006 Midterm Average: 70 Lecture 16: Midterm Solutions Homework 6: Calculator Handshaking HW 6: Due Wednesday, November
More informationLaboratory of Digital Circuits Design: Design, Implementation and Simulation of Digital Circuits Using Programmable Devices
Internet Engineering Dr. Jarosław Sugier Laboratory of Digital Circuits Design: Design, Implementation and Simulation of Digital Circuits Using Programmable Devices This document presents software packages
More informationIn our case Dr. Johnson is setting the best practices
VHDL Best Practices Best Practices??? Best practices are often defined by company, toolset or device In our case Dr. Johnson is setting the best practices These rules are for Class/Lab purposes. Industry
More informationVHDL Examples Mohamed Zaky
VHDL Examples By Mohamed Zaky (mz_rasmy@yahoo.co.uk) 1 Half Adder The Half Adder simply adds 2 input bits, to produce a sum & carry output. Here we want to add A + B to produce Sum (S) and carry (C). A
More informationLecture 12 VHDL Synthesis
CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?
More informationVHDL for Synthesis. Course Description. Course Duration. Goals
VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes
More informationECE 545 Lecture 12. FPGA Resources. George Mason University
ECE 545 Lecture 2 FPGA Resources George Mason University Recommended reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional Details 2 What is an FPGA? Configurable Logic Blocks
More informationControl and Datapath 8
Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system
More informationVHDL simulation and synthesis
VHDL simulation and synthesis How we treat VHDL in this course You will not become an expert in VHDL after taking this course The goal is that you should learn how VHDL can be used for simulation and synthesis
More informationSynthesis from VHDL. Krzysztof Kuchcinski Department of Computer Science Lund Institute of Technology Sweden
Synthesis from VHDL Krzysztof Kuchcinski Krzysztof.Kuchcinski@cs.lth.se Department of Computer Science Lund Institute of Technology Sweden March 23, 2006 Kris Kuchcinski (LTH) Synthesis from VHDL March
More informationFPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1
FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital
More informationDIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 6
DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 6 FINITE STATE MACHINES (FSMs) Moore Machines Mealy Machines Algorithmic State Machine (ASM) charts FINITE STATE MACHINES (FSMs) Classification: Moore Machine:
More information3 Designing Digital Systems with Algorithmic State Machine Charts
3 Designing with Algorithmic State Machine Charts An ASM chart is a method of describing the sequential operations of a digital system which has to implement an algorithm. An algorithm is a well defined
More informationFPGA design with National Instuments
FPGA design with National Instuments Rémi DA SILVA Systems Engineer - Embedded and Data Acquisition Systems - MED Region ni.com The NI Approach to Flexible Hardware Processor Real-time OS Application software
More informationLaboratory Memory Components
Laboratory 3 3. Memory Components 3.1 Objectives Design, implement and test Register File Read only Memories ROMs Random Access Memories RAMs Familiarize the students with Xilinx ISE WebPack Xilinx Synthesis
More informationLattice VHDL Training
Lattice Part I February 2000 1 VHDL Basic Modeling Structure February 2000 2 VHDL Design Description VHDL language describes a digital system as a set of modular blocks. Each modular block is described
More informationC-Based Hardware Design
LECTURE 6 In this lecture we will introduce: The VHDL Language and its benefits. The VHDL entity Concurrent and Sequential constructs Structural design. Hierarchy Packages Various architectures Examples
More informationSequential Statement
Sequential Statement Sequential Logic Output depends not only on current input values but also on previous input values. Are building blocks of; Counters Shift registers Memories Flip flops are basic sequential
More informationCSCI Lab 3. VHDL Syntax. Due: Tuesday, week6 Submit to: \\fs2\csci250\lab-3\
CSCI 250 - Lab 3 VHDL Syntax Due: Tuesday, week6 Submit to: \\fs2\csci250\lab-3\ Objectives 1. Learn VHDL Valid Names 2. Learn the presentation of Assignment and Comments 3. Learn Modes, Types, Array,
More informationLecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)
Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits Hardware Description Language) 1 Standard ICs PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable
More informationDIGITAL LOGIC WITH VHDL (Fall 2013) Unit 6
DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 6 FINITE STATE MACHINES (FSMs) Moore Machines Mealy Machines FINITE STATE MACHINES (FSMs) Classification: Moore Machine: Outputs depend only on the current state
More informationQuartus Counter Example. Last updated 9/6/18
Quartus Counter Example Last updated 9/6/18 Create a logic design from start to a DE10 implementation This example uses best design practices This example is not about creating HDL The HDL code will be
More informationThe board is powered by the USB connection, so to turn it on or off you plug it in or unplug it, respectively.
Lab 1 You may work in pairs or individually on this lab Lab Objectives Learn about the equipment we will be using and how to handle it safely. Learn the basics of using Xilinx ISE to develop hardware designs
More informationMaximizing Logic Utilization in ex, SX, and SX-A FPGA Devices Using CC Macros
Application Note AC201 Maximizing Logic Utilization in ex, SX, and SX-A FPGA Devices Using CC Macros Table of Contents Introduction................................................ 1 SX and Related Architectures.......................................
More informationDIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1
DIGITAL LOGIC WITH VHDL (Fall 23) Unit DESIGN FLOW DATA TYPES LOGIC GATES WITH VHDL TESTBENCH GENERATION DESIGN FLOW Design Entry: We specify the logic circuit using a Hardware Description Language (e.g.,
More informationENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim
ENGN 1630 Fall 2018 Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim You will use the Xilinx ISim simulation software for the required timing simulation of the XC9572XL CPLD programmable
More informationIntroduction to WebPACK 5.2 for FPGAs. Using Xilinx WebPACK Software to Create FPGA Designs for the XSB-300E Board
Introduction to WebPACK 5.2 for FPGAs Using Xilinx WebPACK Software to Create FPGA Designs for the XSB-300E Board Release date: 10/27/2003 All XS-prefix product designations are trademarks of XESS Corp.
More informationDigital Circuit Design Using Xilinx ISE Tools
Digital Circuit Design Using Xilinx ISE Tools Poras T. Balsara and Prashant Vallur Table of Contents 1. Introduction 2. Programmable logic devices: FPGA and CPLD 3. Creating a new project in Xilinx Foundation
More informationExperiment 8 Introduction to VHDL
Experiment 8 Introduction to VHDL Objectives: Upon completion of this laboratory exercise, you should be able to: Enter a simple combinational logic circuit in VHDL using the Quartus II Text Editor. Assign
More informationFPGAs in a Nutshell - Introduction to Embedded Systems-
FPGAs in a Nutshell - Introduction to Embedded Systems- Dipl.- Ing. Falk Salewski Lehrstuhl Informatik RWTH Aachen salewski@informatik.rwth-aachen.de Winter term 6/7 Contents History FPGA architecture
More informationLab 3. Advanced VHDL
Lab 3 Advanced VHDL Lab 3 Advanced VHDL This lab will demonstrate many advanced VHDL techniques and how they can be used to your advantage to create efficient VHDL code. Topics include operator balancing,
More informationVerilog Design Principles
16 h7fex // 16-bit value, low order 4 bits unknown 8 bxx001100 // 8-bit value, most significant 2 bits unknown. 8 hzz // 8-bit value, all bits high impedance. Verilog Design Principles ECGR2181 Extra Notes
More informationToday. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses
Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single
More informationDesign Progression With VHDL Helps Accelerate The Digital System Designs
Fourth LACCEI International Latin American and Caribbean Conference for Engineering and Technology (LACCET 2006) Breaking Frontiers and Barriers in Engineering: Education, Research and Practice 21-23 June
More informationLab 3 Sequential Logic for Synthesis. FPGA Design Flow.
Lab 3 Sequential Logic for Synthesis. FPGA Design Flow. Task 1 Part 1 Develop a VHDL description of a Debouncer specified below. The following diagram shows the interface of the Debouncer. The following
More informationVHDL for FPGA Design. by : Mohamed Samy
VHDL for FPGA Design by : Mohamed Samy VHDL Vhdl is Case insensitive myvar = myvar = MYVAR IF = if = if Comments start with -- Comments can exist anywhere in the line Semi colon indicates the end of statements
More informationVerilog Sequential Logic. Verilog for Synthesis Rev C (module 3 and 4)
Verilog Sequential Logic Verilog for Synthesis Rev C (module 3 and 4) Jim Duckworth, WPI 1 Sequential Logic Module 3 Latches and Flip-Flops Implemented by using signals in always statements with edge-triggered
More informationFPGA Design. Part III - Combinatorial VHDL. Thomas Lenzi
FPGA Design Part III - Combinatorial VHDL Thomas Lenzi Objective We will introduce you to VHDL and to combinatorial statements of VHDL using some examples and exercises. 2 VHDL Basics Few Notes on VHDL
More informationVHDL HIERARCHICAL MODELING
To incorporate hierarchy in VHDL we must add component declarations and component instantiations to the model. In addition, we need to declare internal signals to interconnect the components. We can also
More informationHardware Synthesis. References
Hardware Synthesis MidiaReshadi CE Department Science and research branch of Islamic Azad University Email: ce.srbiau@gmail.com 1 References 2 1 Chapter 1 Digital Design Using VHDL and PLDs 3 Some Definitions
More informationChip Design with FPGA Design Tools
Chip Design with FPGA Design Tools Intern: Supervisor: Antoine Vazquez Janusz Zalewski Florida Gulf Coast University Fort Myers, FL 33928 V1.9, August 28 th. Page 1 1. Introduction FPGA is abbreviation
More informationVerilog Design Entry, Synthesis, and Behavioral Simulation
------------------------------------------------------------- PURPOSE - This lab will present a brief overview of a typical design flow and then will start to walk you through some typical tasks and familiarize
More informationChapter 2 Basic Logic Circuits and VHDL Description
Chapter 2 Basic Logic Circuits and VHDL Description We cannot solve our problems with the same thinking we used when we created them. ----- Albert Einstein Like a C or C++ programmer don t apply the logic.
More informationIntroduction to WebPACK 4.1 for FPGAs. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board
Introduction to WebPACK 4.1 for FPGAs Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Release date: 10/29/2001 All XS-prefix product designations are trademarks of XESS Corp. All
More informationAdvanced module: Video en/decoder on Virtex 5
Advanced module: Video en/decoder on Virtex 5 Content 1. Advanced module: Video en/decoder on Virtex 5... 2 1.1. Introduction to the lab environment... 3 1.1.1. Remote control... 4 1.2. Getting started
More informationTRAFFIC LIGHT CONTROLLER USING VHDL
TRAFFIC LIGHT CONTROLLER USING VHDL Aamir Raza 1, Arun Kumar 2 and Ekta Chaudhary 3 1,2,3 B.Tech, 4 th yr, GIET GUNUPUR, RAYAGADA, PIN-765022 Abstract- Traffic light controller is a set of rules and instructions
More informationVHDL: RTL Synthesis Basics. 1 of 59
VHDL: RTL Synthesis Basics 1 of 59 Goals To learn the basics of RTL synthesis. To be able to synthesize a digital system, given its VHDL model. To be able to relate VHDL code to its synthesized output.
More informationHDL Coding Style Xilinx, Inc. All Rights Reserved
HDL Coding Style Objective After completing this module, you will be able to: Select a proper coding style to create efficient FPGA designs Specify Xilinx resources that need to be instantiated for various
More informationFundamental Design Concepts. Fundamental Concepts. Modeling Domains. Basic Definitions. New terminology and overloaded use of common words
Fundamental Design Concepts Fundamental Concepts Basic Definitions study now revisit later New terminology and overloaded use of common words Modeling Domains Structural Domain a domain in which a component
More informationXST User Guide
XST User Guide R 2005 Xilin, Inc. All Rights Reserved. XILINX, the Xilin logo, and other designated brands included herein are trademarks of Xilin, Inc. All other trademarks are the property of their respective
More informationXST User Guide. UG627 (v 11.3) September 16, 2009
UG627 (v 11.3) September 16, 2009 Xilinx Trademarks and Copyright Information Xilinx is disclosing this user guide, manual, release note, and/or specification (the Documentation ) to you solely for use
More informationCMPT 250: Computer Architecture. Using LogicWorks 5. Tutorial Part 1. Somsubhra Sharangi
CMPT 250: Computer Architecture Using LogicWorks 5 Tutorial Part 1 Somsubhra Sharangi What is VHDL? A high level language to describe digital circuit Different that a programming language ( such as Java)
More informationVerilog Module 1 Introduction and Combinational Logic
Verilog Module 1 Introduction and Combinational Logic Jim Duckworth ECE Department, WPI 1 Module 1 Verilog background 1983: Gateway Design Automation released Verilog HDL Verilog and simulator 1985: Verilog
More informationISE Design Suite Software Manuals and Help
ISE Design Suite Software Manuals and Help These documents support the Xilinx ISE Design Suite. Click a document title on the left to view a document, or click a design step in the following figure to
More informationIntroduction to WebPACK 3.1. Using XILINX WebPACK Software to Create CPLD Designs
Introduction to WebPACK 3.1 Using XILINX WebPACK Software to Create CPLD Designs RELEASE DATE: 8/28/2000 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix product designations
More informationVerilog Fundamentals. Shubham Singh. Junior Undergrad. Electrical Engineering
Verilog Fundamentals Shubham Singh Junior Undergrad. Electrical Engineering VERILOG FUNDAMENTALS HDLs HISTORY HOW FPGA & VERILOG ARE RELATED CODING IN VERILOG HDLs HISTORY HDL HARDWARE DESCRIPTION LANGUAGE
More information8 Register, Multiplexer and
8 Register, Multiplexer and Three-State Inference HDL Compiler can infer Registers (latches and flip flops) Multiplexers Three state gates This chapter discusses methods of inferring different types of
More informationTable of Contents TABLE OF CONTENTS...2
AUDIO COMPRESSION Table of Contents TABLE OF CONTENTS...2 OVERVIEW...3 1.1 PROJECT GOALS...3 1.2 DESIGN REQUIREMENTS... 3 1.3 THEORY... 3 1.4 SYSTEM OVERVIEW... 6 1.5 BLOCKS OVERVIEW... 8 2.1 Vhdl codes
More informationTUTORIAL On USING XILINX ISE FOUNDATION DESIGN TOOLS: Mixing VHDL and Schematics
TUTORIAL On USING XILINX ISE FOUNDATION DESIGN TOOLS: Mixing VHDL and Schematics Shawki Areibi July 7, 2005 1 Introduction The objective of this tutorial is to show how VHDL can be incorporated into a
More informationUNIT I Introduction to VHDL VHDL: - V -VHSIC, H - Hardware, D - Description, L Language Fundamental section of a basic VHDL code Library :
UNIT I Introduction to VHDL VHDL stands for very high-speed integrated circuit hardware description language. Which is one of the programming languages used to model a digital system by dataflow, behavioral
More informationHDL. Hardware Description Languages extensively used for:
HDL Hardware Description Languages extensively used for: Describing (digital) hardware (formal documentation) Simulating it Verifying it Synthesizing it (first step of modern design flow) 2 main options:
More information[VARIABLE declaration] BEGIN. sequential statements
PROCESS statement (contains sequential statements) Simple signal assignment statement
More informationNikhil Gupta. FPGA Challenge Takneek 2012
Nikhil Gupta FPGA Challenge Takneek 2012 RECAP FPGA Field Programmable Gate Array Matrix of logic gates Can be configured in any way by the user Codes for FPGA are executed in parallel Configured using
More informationAPPLICATION NOTE. A CPLD VHDL Introduction. Introduction. Overview. Entity. XAPP 105 January12, 1998 (Version 1.0) 0 4* Application Note
0 APPLICATION NOTE A CPLD VHDL Introduction XAPP 105 January12, 1998 Version 1.0) 0 4* Application Note Summary This introduction covers the basics of VHDL as applied to Complex Programmable Logic Devices.
More informationThe University of Alabama in Huntsville Electrical and Computer Engineering CPE/EE 422/522 Spring 2005 Homework #6 Solution
5.3(a)(2), 5.6(c)(2), 5.2(2), 8.2(2), 8.8(2) The University of Alabama in Huntsville Electrical and Computer Engineering CPE/EE 422/522 Spring 25 Homework #6 Solution 5.3 (a) For the following SM chart:
More informationJUNE, JULY 2013 Fundamentals of HDL (10EC45) PART A
JUNE, JULY 2013 Fundamentals of HDL (10EC45) Time: 3hrs Max Marks:100 Note: Answer FIVE full questions, selecting at least TWO questions from each part. PART A Q1.a. Describe VHDL scalar data types with
More informationIntroduction to WebPACK 4.1 for CPLDs. Using Xilinx WebPACK Software to Create CPLD Designs for the XS95 Board
Introduction to WebPACK 4.1 for CPLDs Using Xilinx WebPACK Software to Create CPLD Designs for the XS95 Board Release date: 10/29/2001 All XS-prefix product designations are trademarks of XESS Corp. All
More informationIntroduction to WebPACK 6.3. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board
Introduction to WebPACK 6.3 Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Release date: 1/1/2005 2005 by XESS Corp. All XS-prefix product designations are trademarks of XESS Corp.
More information