fpga_tutorial_iecon06_em_mc (1).pdf
TRANSCRIPT
-
1FPGAs used in Industrial Control Systems
Prof. Eric Monmasson, Cergy-Pontoise University, Cergy-Pontoise, France
Email: [email protected]. Marcian Cirstea,
Anglia Ruskin University, Cambridge, UKEmail: [email protected]
2
z Introduction, Presentation of the Current Trends (30 min, MC, EM)z Description of FPGAs (30 min, EM)z Holistic Modelling/Design Methodology (30 min, MC)z Main Design Rules (30 min, EM)
Refinement of Control Algorithms by Simulation Algorithm Architecture Adequation Reusability, VHDL Coding Hardware-In-the-Loop (HIL) Validation
Coffee break --------------------------------------------------------------------------------------
z 1st case studies series: FPGA-based Current Controllers for AC Drives (40 min, EM) Quasi-Analog Hysteresis Controller Delta Modulator PI SVM Controller Predictive Controller
z 2nd case studies series: FPGA-based Intelligent Controllers for AC Drives and AC Generators (40 min, MC)
Induction Motor Control Using Neural Networks Stand Alone Generator Set Using Fuzzy-Logic and PWM
z Conclusions and Perspectives (10 min, EM, MC)z Hands on practical demonstration on two simple examples (30 min, EM, MC)
Overview
ELECTRONIC SYSTEMS ON CHIPTechnical Committee of IEEE Industrial
Electronics Society http://vega.unitbv.ro/~ieee
Mission Statement:This Committee aims to promote professional activities in the area of low power electronics used in the modern industry, with an important focus on the design, development, simulation, verification and testing of digital and analogue circuits integrated as Systems on Programmable Chips, targeting Field Programmable Gate Arrays / Application Specific Integrated Circuits for implementation, and including the use of Hardware Description Languages or high level programming languages hardware compilers, as well as embedded electronic systems and associated software.
4
Chair: Dr. Marcian Cirstea, Head of Department of Design & Technology, Anglia Ruskin University, Cambridge, UK.
Email: [email protected]
z Special conference sessions organisations subcommitteez Coordinator and Committee Vice-Chair: Dr. Manus Henry, Deputy
Director, Invensys University Technology Centre for Advanced Instrumentation at the Department of Engineering Science, the University of Oxford, UK.
z Dr.Vito Nardi, University of Cassino, Italy.
z Special Issues / Sections of Journals subcommitteez Coordinator: Prof. Eric Monmasson, Head of the Institut Universitaire
Professionnalis de Gnie Electrique et dInformatique Industrielle (IUP GEII), University of Cergy-Pontoise (UCP), France.
z Prof. Josep M. Guerrero, Universitat Politcnica de Catalunya (UPC), Barcelona, Spain.
z Dr. Jeen G. Khor, Senior Design Engineer, INTEL, Penang, Malaysia.
z Web page subcommitteez Coordinator: Dr. Andrei Dinu, Goodrich Engine Control Systems,
Electromagnetic Systems Technical Centre, Birmingham, UK. z Dr. Otilia Boaghe, Phillips Semiconductors, Zurich, Switzerland.
-
5z Conferences / transactions papers review subcommitteez Coordinator: Prof. Dan Nicula, Transilvania University Brasov,
Romania.
z Prof. Bogdan Dan Willamowski, Past President of the Industrial Electronics Society, Auburn University, AL, USA.
z Dr. Jeroen Van Den Keybus, Catholic University of Leuven, Belgium.
z Dr. Yasuhiro Ota, Partner Robot Development Division, Toyota Motor Corporation, Aichi, Japan.
z Prof. Chin-Long Wey, Dean of College of Electrical Engineering and Computer Science, National Central University, Chung-Li, Taiwan.
z Dr.Robert Seliga, Electronics Design Engineer, Newage AVK SEG, Stamford, UK.
6
Activity Plan 20079 Website development to support & promote committees work and to
provide a point of reference on topics of interest. Guest-Editorship of a special issue of the Transactions on Industrial
Electronics: FPGAs used in Industrial Control Systems. Dr. Eric Monmasson and Dr. Marcian Cirstea are joint Guest Editors.
Organisation of a best paper prize of $500 for this Special Issue Organisation of special sessions at the forthcoming IEEE IES
Conference: ISIE07. Organising ISIE08 in Cambridge Refereeing of IEEE Transactions and Conference papers. Contributing to the organisation of other IES conferences by chairing
Technical Tracks, refereeing papers, etc. Presenting tutorials Printing materials to advertise the committee, as well as its technical
activities, as posters / leaflets.
7
Traditionally, mathematical models were used to functionally evaluate engineering systems. The development of each system component used then to be separately addressed, often involving the use of other CAD tools and/or different software platforms.
Traditional methods are not able to cope with increased complexity and demands of higher levels of systems integration / faster time to market. Recent advances in CAD methodologies/languages has brought the systemsfunctional description and hardware implementation closer.
Modern Electronic Design Automation (EDA) tools are used to model, simulate and verify a complex engineering system fast, with high confidencein right first time correct operation, without producing a prototype.
High performance electronic controllers can also be implemented.
The presentation reveals recent work that was carried out in the area of holistic modelling of engineering systems using HDLs.
Introduction
8
Traditionally, mathematical models were used to functionally evaluate engineering systems. The development of each system component used then to be separately addressed, often involving the use of other CAD tools and/or different software platforms.
Traditional methods are not able to cope with increased complexity and demands of higher levels of systems integration / faster time to market. Recent advances in CAD methodologies/languages has brought the systemsfunctional description and hardware implementation closer.
Modern Electronic Design Automation (EDA) tools are used to model, simulate and verify a complex engineering system fast, with high confidencein right first time correct operation, without producing a prototype.
High performance electronic controllers can also be implemented.
The presentation reveals recent work that was carried out in the area of holistic modelling of engineering systems using HDLs.
Introduction
-
9Integrated Circuitsz Off-the-Shelf Logic - Function pre-set.
z PROM, PAL, FPLA - Programmed by fusible links / charge storage.
z FPGAs - User programmable Field Programmable Gate-Arrays.
z Gate Array Device - Function set at manufacture in the final stage of production (metallization).
z Cell Based Device - Function set at manufacture using CAD to speed up design and a library of optimised standard functions.
z Full Custom Device - Function set at manufacture - every circuit part is optimally designed. Long development time even with CAD.
;More gates / chip ==> reduces cost but requires CAD.10
Comparative Economics Cost
(relative) full-custom
cell -based
system
gate-array SSI / MSI
Volume 10,000 50,000 .100,000
z True cost formula shows that the final unit cost is:cost = D / N + chip + F
where D=total development cost, N=no. of chips manufactured,chip=unit chip costs in production, F=packaging, testing per chip
11
Application Specific Integrated Circuitsz Application Specific Integrated Circuits (ASICs) = any IC designed and built
specifically for a particular application.
z ASICs allow tailoring the design during development stages of an IC. Advantages:. Reduced Size and Cost. High Speed and Accuracy in Information Processing. Compact Structure. High Reliability of Circuit Operation
z Two major ASIC technologies: CMOS and BICMOS - millions gates. z RISC and DSP cores are now offered by chip suppliers. They permit the
design of single chip customised advanced integrated processors.
z Field-Programmable Gate Arrays (FPGAs) are a special class of ASIC'swhich differ from mask-programmed gate arrays in that the programming is done by end-users with no IC masking steps.
12
Introduction
z FPGAs have reached high density rate ( > 10 millions gates)
z Performing Electronic Design Automation (EDA)Tools
z These components allow the programming of specific hardware architecture
z This leads to a flexible and an efficient solution (software development of dedicated hardware architecture that includes parallelism)
z System-on-a-Chip (SoC) scale
-
13
Introduction
z Many industrial applications Telecom, Video, Signal Processing, Medical Systems, Embedded Systems (Aircraft, Automotive), Electrical Systems:
z PWM inverters, z Power factor correction AC/DC converters, z Multilevel converters, z Matrix converters, z Active filters,z Fault-detection on power grid,z Electrical machines control (induction machine drives, multi-machines
systems, z Neural Network control of induction motors, z Fuzzy Logic control of power generators, z Speed measurement
14
z The decrease of the cost An architecture based only on the specific needs of the algorithm to implement, Application of highly advanced and specific methodologies improving implementation
time also called "time to market", Expected development in VLSI design that will allow integrating a full control system
with its analog interface in a single chip, SoC.z The confidentiality
Specific architecture, integrating the know-how of a company, is not easily duplicable.z The embedded systems
Many constraints as in aircraft applications, like limited power consumption, thermal consideration, reliability and Single Event Upset (SEU) protection.
z The improvement of control performance Execution time can be dramatically reduced by designing dedicated parallel architectures,
allowing FPGA-based controllers to reach the level of performance of their analog counterparts without their drawbacks (parameter drifts, lack of flexibility).
FPGA-based controller can also be adapted in run-time to the needs of the plant by dynamically reconfiguring it.
IntroductionAdvantages:
15
Introduction
DSP
FPGA
(a) (b) (c)
(d)
Algorithm Timing constraints
A
l
g
o
r
i
t
h
m
c
o
m
p
l
e
x
i
t
y
(a) : high data dependency (b) : high level of parallelism of the algorithm(c) : few functions and / or homogenous functions (d) : lot of functions and / or heterogeneous functions
A specific architecture for each control algorithm16
ejej
d
qis*
is
vsd*
vsq*
vs*
vs
c1
c2
c3
e-je-j
is3
is2
is1
Speed&
FluxRegulators
Speed&
FluxRegulators
isd
isq
Flux & SpeedObservation
(Sensorless operating mode)
Flux & SpeedObservation
(Sensorless operating mode)
s
s
m
123
123
isd*
isq*
is
Is
PWM
Transformations
Introduction
is3
is2
is1
ejej
d
qis*
is
vsd*
vsq*
vs*
vs
c1
c2
c3
e-je-j
Bouclesde vitesse
&de flux
Bouclesde vitesse
&de flux
isd
isq
Reconstruction du vecteur flux
&de la vitesse (sans capteur)
Reconstruction du vecteur flux
&de la vitesse (sans capteur)
s
s
m
123
123
isd*
isq*
is
Is
MLI
Algorithmic Constraints:
Algorithm Architecture Adequation by means of FPGA
Vector Control Algorithm:
SVPWM Current Regulator Flux Estimator
ejej
d
qis*
is
vsd*
vsq*
vs*
vs
c1
c2
c3
e-je-j
is3
is2
is1
Speed&
FluxRegulations
Speed&
FluxRegulations
isd
isq
Flux vector estimation&
Speed estimation (sensorless)
Flux vector estimation&
Speed estimation (sensorless)
s
s
m
123
123
isd*
isq*
is
Is
PWM
Differences :
Heterogeneous Functions Various Time Scale Various Computing Tasks
-
17
Introduction
-K -p i /3 0 /W m a x
c 1
c 2
c 3
V s 1
V s 2
V s 3
o n d u l e u r
t
P ro d u c t
W re f
W Is q re f
P IW _ sa t
0 0 ; 0 .5 9 ,6 5 0 0
N re f
V s 1
V s 2
V s 3
C r
rh
C e m
te ta
W m
I s 1
I s 2
I s 3
M S P M
-K -
Isd q m a x
V s1
te ta m
N re f
Isq re f
N
C r
W m
C e m
Is1
p
-K -
W m tg (d e c )
D e f l u xa g e
6 .0 9 ; 0 .5 9 ,1 5
C r
I s d re f
I s q re f
t e t a
I
c 1
c 2
c 3
C o n tr l e d e sC o u ra n ts
C l o c k
W
C r0C r
C h a rg e
-K - 1 /W m a x
How to easily implement a control algorithm on an FPGA-based optimized hardware architecture?
Simulink ModelFPGA board
18
This leads to follow up a design methodology
-K -p i /3 0 /W m a x
c 1
c 2
c 3
V s 1
V s 2
V s 3
o n d u le u r
t
P ro d u ct
W re f
W I s qre f
P IW _ sa t
0 0 ; 0 .5 9 ,6 5 0 0
N re f
V s 1
V s 2
V s 3
C r
rh
C em
te ta
W m
I s 1
I s 2
I s 3
M S P M
-K -
Isd q m a x
V s1
te ta m
N re f
Isq re f
N
Cr
Wm
Ce m
Is1
p
-K -
W m tg(dec )
De f lu xa g e
6 .0 9 ; 0 .5 9 ,1 5
Cr
I s dre f
I s q re f
t et a
I
c 1
c 2
c 3
Co n tr le d e sCo u ra n ts
C l o ck
W
C r0C r
Ch a rg e
-K - 1 /W m a x
3
X 3
2
X 2
1
X 1
xl sp ro ma d d r [0 :1 0 2 3 ]
RO M (sin )1
xl sp ro ma d d r [0 :1 0 2 3 ]
RO M (sin )
xl sp ro ma d d r [0 :1 0 2 3 ]
RO M (co s)1
xl sp ro ma d d r [0 :1 0 2 3 ]
RO M (co s)
x (-1 )
Ne g a te
xl m u l ta
b(a b )
M u l t3
xl m u l ta
b(a b )
M u l t2
xlm u l ta
b(a b )
M u l t1
xlm u l ta
b(a b )
M u l t
x l a d d su ba -ba
b
A d d S u b 3
xl a d d su ba + ba
b
A d d S u b 2
xla d d su ba -ba
b
A d d S u b 1
x la d d su ba -ba
b
A d d S u b
3 4 0
2 *p i /3
3
P si
2
X q
1
X d
functional simulation Fixed-point quantization & discrete model
VHDL codingFPGA targetExperimental board
F
+-
J
z-1z-1
++
====
0
1 0
++
Kid
Kpi
Err
F
X
FF0
Data FlowGraph
Introduction
19
Generic FPGA Architecture
C onfigurable Input/O utput
Block
C onfigurable Logic Block
Interconnection Program m able
N etwork
20
Generic FPGA Architecture
Inputs [3:0]
LUT LUT
Chemin Carry Path
Bascule D D
Flip-Flop
Input carry
Clock
Flip-Flop output
Combinatorial output
Output carry
Logic Cell / Logic Element :
-
21
Head-to-Head
z Xilinx Virtex-5 1v 65nm copper 207,360 logic cells 11.6 Mb RAM 192 48-bit MAC Unit
(25x18 multipliers, 550MHz)
Up to four PowerPC 405 cores
MicroBlaze 32-bit soft core
z Altera Stratix II 1.2v 90nm copper 179,400 logic elements 9.4 Mb RAM 96 36x36 multipliers
(384 18x18 multipliers) 1,170 user I/O pins
Nios II 32-bit soft processor core
22
Head-to-Head Low Cost
z Spartan 3E 1.2v 90nm copper 33,192 logic cells 0.65 Mb RAM 36 18x18 multipliers 376 user I/O pins 8 DCMs
MicroBlaze 32-bit soft processor core
z Altera Cyclone II 1.2v 90nm copper 68,416 logic elements 1.15 Mb RAM 150 18x18 multipliers 622 user I/O pins 4 PLLs
Nios II 32-bit soft processor core
23
Virtex-4 Architecture
1 Gbps SelectIOChipSync Source synch, XCITE Active Termination
Smart RAM New block RAM/FIFO
Xesium ClockingTechnology
500 MHz
PowerPC 405with APU Interface450 MHz, 680 DMIPS
Tri-ModeEthernet MAC
10/100/1000 Mbps
RocketIOMulti-GigabitTransceivers
622 Mbps10.3 Gbps
XtremeDSPTechnology Slices
256 18x18 GMACs
Advanced CLBs200K Logic Cells
24
Virtex IV Platforms
ResourceResource
14K14K200K LCs200K LCsLogic
Memory
DCMs
DSP Slices
SelectIO
RocketIO
PowerPC
Ethernet MAC
LXLX FXFX SXSX
0.90.96 Mb6 Mb
441212
32329696
240240960960
23K23K55K LCs55K LCs
2.32.35.7 Mb5.7 Mb
4488
128128512512
320320640640
12K12K140K LCs140K LCs
0.60.610 Mb10 Mb
442020
3232192192
240240896896
0024 Channels24 Channels
1 or 2 Cores1 or 2 Cores
2 or 4 Cores2 or 4 Cores
N/A
N/A
N/A
N/A
N/A
N/A
-
25
Altera Stratix
26
Slices and CLBs
z Each Virtex-II CLB contains four slices Local routing provides
feedback between slices in the same CLB, and it provides routing to neighboring CLBs
A switch matrix provides access to general routing resources
CIN
SwitchMatrix
BUFTBUF T
COUTCOUT
Slice S0
Slice S1
Local Routing
Slice S2
Slice S3
CIN
SHIFT
27
Distributed SelectRAM Resources
z Uses a LUT in a slice as memoryz Synchronous writez Asynchronous read
Accompanying flip-flops can be used to create synchronous read
z RAM and ROM are initialized duringconfiguration Data can be written to RAM
after configurationz Emulated dual-port RAM
One read/write port One read-only port
RAM16X1S
O
DWE
WCLKA0A1A2A3
LUTLUT
RAM32X1S
O
DWE
WCLKA0A1A2A3A4
RAM16X1D
SPO
DWE
WCLKA0A1A2A3DPRA0 DPODPRA1DPRA2DPRA3
Slice
LUT
LUT
28
Slice 0
LUTLUT CarryCarry
LUTLUT CarryCarryD QCE
PRE
CLR
DQCE
PRE
CLR
Simplified Slice Structure
z Each slice has four outputs Two registered outputs,
two non-registered outputs Two BUFTs associated
with each CLB, accessible by all 16 CLB outputs
z Carry logic runs vertically, up only Two independent
carry chains per CLB
-
29
Altera Stratix
30
Logic Array Blocks (LABs)
31
Logic Element
32
Embedded RAM
z Xilinx Block SelectRAM 18Kb dual-port RAM arranged in columns
z Altera TriMatrix Dual-Port RAM M512 512 x 1 M4K 4096 x 1 M-RAM 64K x 8
-
33
Xilinx: Embedded Multipliers
z 18-bit twos complement signed operationz Optimized to implement Multiply and Accumulate functionsz Multipliers are physically located next to block SelectRAM
memory
18 x 18Multiplier18 x 18Multiplier
Output (36 bits)
Data_A (18 bits)
Data_B (18 bits)
18 x 18signed12 x 12signed8 x 8 signed4 x 4 signed
34
Altera: Embedded DSP Blocks
z Two DSP Block columns per devicez Number varies by height of columnz Can implement:
Eight 9x9 multipliers Four 18x18 multipliers One 36x36 multiplier
z Contains adder/subtracter/accumulatorz Registered inputs can become shift register
35
Altera Multiplier Sub-block
36
Virtex: Active Interconnect
-
37
Virtex Hierarchical Interconnect
38
Altera: MultiTrack Interconnect
z Direct link between LABs and adjacent blocksz Row interconnects
4, 8, and 24 blocks left or rightz Column interconnects
4, 8, and 16 blocks up or down
39
Stratix: R4 Interconnect
40
MicroBlaze Processor-Based Embedded Design
Flexible Soft IPMicroBlaze32-Bit RISC Core
UART 10/100E-NetMemory
Controller
Off-ChipMemory
FLASH/SRAM
Fast Simplex Link
0,1.7
CustomFunctions
CustomFunctions
BRAM Local Memory
BusD-CacheBRAM
I-CacheBRAM
ConfigurableSizes
A
r
b
i
t
e
r
Processor Local Bus
Instruction Data
PLBBus
Bridge
PowerPC405 Core
Dedicated Hard IP
A
r
b
i
t
e
r
Processor Local Bus
Instruction Data
PLBBus
BridgeBus
Bridge
PowerPC405 Core
Dedicated Hard IP
PowerPC405 Core
Dedicated Hard IP
PowerPC405 Core
Dedicated Hard IPPossible inVirtex-II Pro
Hi-SpeedPeripheral
GB E-Net
e.g.Memory
ControllerHi-Speed
PeripheralHi-Speed
PeripheralGB
E-NetGB
E-Net
e.g.Memory
Controller
e.g.Memory
Controller
A
r
b
i
t
e
r OPBOn-Chip Peripheral Bus
CacheLink
SRAM
-
41
Embedded DevelopmentTool Flow Overview
Data2MEM
Download CombinedImage to FPGA
Compiled ELF Compiled BIT
RTOS, Board Support Package
EmbeddedDevelopment Kit
Instantiate the System Netlistand Implement
the FPGA
?
HDL Entry
Simulation/Synthesis
Implementation
Download BitstreamInto FPGA
Chipscope
Standard FPGAHW Development Flow
VHDL or Verilog
System NetlistInclude the BSPand Compile theSoftware Image
?
Code Entry
C/C++ Cross Compiler
Linker
Load SoftwareInto FLASH
Debugger
Standard EmbeddedSW Development Flow
C Code
Board SupportPackage
12 3 Compiled BITCompiled ELF
42
Altera Nios II
43
Altera Nios II
44
SoPC Builder
-
45
Actel Fusion
46
Actel Fusion - ADC
ACMFlash
memory
RTC
Analog multiplexer
AnalogQuad
9
ADC
12 bits
AnalogQuad
8
AnalogQuad
1
AnalogQuad
0
Analog Bloc
ADCSTART
5 bits CHNUMBER[4 :0]
DATAVALIDCALIBRATE
ADCRESULT [11 :0]
AV0AC0AG0
AT0
AV1AC1AG1
AT1
AV8AC8AG8
AT8
AV9AC9AG9
AT9
0143031
Tempratureinterne
Vcc(1.5V)
SYSCLK = 50MHz
ADCCLK
Freq_div
01
6 MHz
CLK
:
47
Actel ProASIC
48
Actel ProASIC
-
49
NOTHING EASIER !
In trouble with a chip design ?
50
Design Methodologies EDA Tools
Traditional
Modern
Everybody hates EDA tools at some stage !!!
51
Design flow
z Design Entry (schematic,HDL, state diagram).
z Compilationz Apply stimulusz Simulationz Implementation and Layoutz Timing Analysis / Verificationz Download design into siliconz Testing the chip
52
Novel Systems Modelling Method- main features and context -
z Extends the traditional use of Hardware Description Languages (HDLs) for electronic circuits design, to encompass holistic modelling of more complex engineering systems.
z Outcome: design environment that allows all aspects of the system to be simultaneously considered, therefore maximising performance.
z Proposed approach correlated with powerful international movement/leading edge research, directed towards system level modelling/design.
z The international EDA community, united under ACCELLERA (2000) (http://www.accellera.org/index.html), assumed the mission to drive the worldwide development and use of standards required by systems, semiconductors & design tools.
z Clear proof of the internationally identified need for the development of holistic models for complex engineering systems.
z Proposed for engineering systems holistic modelling: VHDL = Very high speed integrated circuit Hardware Description Language. (IEEE, 1993).
-
53
Specific Advantages Offered by VHDL
z Allows the functional/behavioural description of an engineering system to be combined with a detailed electronic design, on the same CAD platform.
z The mathematical aspects of systems and the electronic hardware design are simultaneously addressed, in a unique environment.
z It is supported by all major Computer Aided Design platforms
z Ability to handle all levels of abstraction. The system can be simulated as an overall model during all stages of the electronic controller design, which can be subsequently targeted for system on a chip silicon implementation.
z Fast implementation & relatively short time to market of new designs.
z Hardware Implementation of Artificial Intelligence is facilitated.
z Versatile reusable models / design modules are generated, in accordance with modern principles of design reuse.
54
Advantages of FPGA Controller Prototyping
z A cheap & fast VHDL code validation is via a prototype board containing re-programmable devices - Field Programmable Gate Arrays (FPGAs).
z Allows electronic controllers hardware validation that provides significant information before the decision is taken to invest in an Application Specific Integrated Circuit (ASIC) = IC dedicated specifically to an application.
z It shortens the time to correct any design problem and it ensures an error free design before permanent ASIC implementation.
z The prototype board can be used for hardware testing other system components.
z The general benefits of holistic modelling of systems, combined with the advantages of VHDL and FPGAs, enable the efficient investigation of new engineering system topologies employing complex electronic controllers.
55
Engineering Systems Modelling Approach Summary
Modelling / Development: VHDLElectronic Controller Hardware Prototyping: FPGAAdvantages of using VHDL Efficient design process Single environment for modelling, simulation & electronic controller design. Easy modifications and system integration of designs EDA platform independence of VHDL designs (ASCII files) Reusable IP block modelling/design style becomes possibleAdvantages of using FPGAs Small, compact design Fast, relatively cheap Reusable hardware framework for testing a design Short time to market of product, rapid prototyping 56
Top-Down Designz VHDL allows the designer to develop and simulate ideas fast, without
getting caught-up in the details of implementation.
z As the design evolves to completion, the language is able to support a complex detailed digital system description.
z Top-down design begins with modelling an idea at an abstract level, and proceeds through the iterative steps necessary to further refine this into a detailed system.
z A test environment is developed early in the design cycle. Concepts are tested before investment is made in implementation.
z As design evolves to new levels of detail, the test environment will check compliance with the original specification.
-
57
VHDL Description
z Evolution of the VHDL language began in 1980's and resulted in the adoption of the VHDL's IEEE Standard (1993).
z Due to increased demands of higher levels of integration / faster time-to-market, a standard language, that referenced a higher level of design abstraction was needed. This stand-alone specification is not dependent on any specific tool.
z An entire system, once consisting of many components/circuit boards, can be replaced by one/two integrated circuits.
z VHDL's flexibility and choice of modelling styles enable a natural progression from idea to implementation, giving the designer the ability to quickly create, simulate, and verify an abstract model.
z Thus, design concepts can be tested before the investment is made in the hardware implementation.
z A major feature of VHDL is its inherent ability to handle all levels of abstraction. The designer requires the use of only a single language, as well as a single simulator for all phases of design. 58
Design UnitsEntity: describes the interface between the outside world and the
design. The connection points (PORTs) to the design, the direction and type of data that flows through these points are defined here.
z For example, an AND gate with 3 connection points, 2 inputs and 1 output and data type bit (values '0' or '1') might look like:
ENTITY and2 IS
PORT (in1,in2: IN bit;
outp: OUT bit);
END and2;
Architecture: defines an entity's behaviour from a simulation point of view. It depends upon the information declared within an entity.
59
z A behavioural architecture example for the and2 entity is:ARCHITECTURE arch1 OF and2 ISBEGIN
output in1, sig2=> in2, sig3 => internal);u2:and2 PORT MAP(sig1=>in3, sig2=>internal, sig3=>output);END struct; 60
Behavioural Designz In VHDL behavioural descriptions there is no reference to submodules within a
specific VHDL architecture. z This does not preclude the use of subprograms within VHDL descriptions, but
precludes the use of other VHDL components. z Behavioural descriptions are defining the design functionality. z A behavioural description of a multiply accumulate device (mac) is:
USE WORK.util.ALL;ENTITY mac IS
GENERIC(tco: time := 10 ns);PORT( in1, in2: IN bit_vector(15 DOWNTO 0);
clk, reset: IN bit;out1: OUT bit_vector(31 DOWNTO 0));
END mac;ARCHITECTURE behave OF mac ISBEGIN
PROCESS (clk, reset)VARIABLE reg_in1, reg_in2, reg_mul, accum: integer;
-
61
BEGIN IF reset = '0' THEN
reg_in1 := 0;reg_in2 := 0;reg_mul := 0;accum := 0;
ELSIF rising_edge(clk) THENaccum := accum + reg_mul;reg_mul := reg_in1 * reg_in2;reg_in1 := vect_to_int(in1);reg_in2 := vect_to_int(in2);
END IF;out1
-
65
z The VHDL model is converted into a hardware structure with the help of synthesis tools.
z First the VHDL model is mapped to a hardware structure described using cells from a technology library. Then the netlistis placed and routed.
z Usually an optimizer is involved in generating the final result based on silicon area minimisation or speed considerations.
z The VHDL code has to be written in a style that is implementable and generates reliable circuits.
z Synchronous circuits are preferred.
VHDL Design for Synthesis
66
Flip-flop Output Driving the Clock Input of Another Flip-Flop
d q
> c k q b
d q
> c k q b
Clock Signal Situations
Avoiding Gated Clock by Using a Clock Enable
67
Clock Bufferingz In FPGAs the clock tree is already designed and the clock distribution is dealt
with automatically be the synthesis tool.z For ASIC design it may be necessary to design the clock tree manually.z It is important to avoid: Clock skew generated by unequal depth of clock buffering. Unequal load-dependent delays generated by unbalanced clock buffers fan-out. Slow clock edges due to excessive buffer loading.
Incorrect Clock Buffering
68
Correct Clock Buffering
z The circuit provides the same buffering depth at all clocked points;
z All buffers have the same fan-out;
z The buffers are lightly loaded (less than 50% of maximum fan-out).
-
69
Shift Registers and Clock Bufferingz Shift registers are particularly sensitive to clock skew. The register
operation could be incorrect due to set-up and hold problems.
clk
dd q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
clk
dd q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
d q
>ck qb
70
Situations to be Avoided when Operating with the Asynchronous Reset
zIt is recommended to avoid driving the asynchronous reset input of one flip-flop using the output of the other.
d q
>ck qb
d q
>ck qb r
clk
d q
>ck qb
clk
CombinationalLogic
d q
>ck qb r
71
The Recommended Solution for flip-flops with Synchronous Reset
c lk
d q
>ck qb r
d q
>ck qb r
d q
>ck qb r
d q
>ck qb r
rese t
zA signal conflict may arise at the interface between a synchronous circuit and an external asynchronous input. It is recommended to synchronize an asynchronous input by passing it through one or more flip-flops.
Synchronizing Asynchronous Inputs
d q
> c k q b
d q
> c k q b
d (e x te rn a l) d ( in te rn a l)
c lk ( in te rn a l)
72
Adders and Multiplexersarchitecture arch of entity1 isbeginoutp
-
73
Optimised Adder and Multiplexer Circuit
process (sel, a, b, c)variable in_add : std_logic_vector(5 downto 0);
beginif sel = '0' thenin_add
-
77
Design Methodology
9 To ensure a more automated and less intuitive approach for the design of FPGA-based control systems
Objectives
9 Reduction of the development time
9 Development of a specific library of reusable modules dedicatedto the control of electrical systems
9 First attempt success guarantee of the designed architecture
78
Modular partitioningof the algorithm
Simulation procedure
Optimization of theconsumed resources
Architecture design
Validation of the architecture
Design Methodology
Different steps
79
Modle continu
Discrete Model
Per Unit Dicrete Model
Example : dX/dt (X[k+1]-X[k])/Ts
X/Xb
Continuous Model
Design Methodology
Reduction of the development time Extraction of reusable modulesModular partitioning of the algorithm
80
Design Methodology
Continuous Model of a FOC Estimator
-
81
sq = Lsisq
ddq/dt = wdq
sd = Lsisd + (Lm/Lr)r
Cem = (3/2)p(Lm/Lr) r isq
Wdq = w + Lmisq/(Trr)
r = Lm/(1+Trs) isd
isq =2/3(sin(+150) is1 + cos() is2)isd =2/3(sin(+60) is1 + sin() is2)
Continuous Model of a FOC Estimator
Design Methodology
Simplification
82
Continuous Model
Discrete Model
Per Unit Discrete Model
Design Methodology
Euler: dX/dt (X[k+1]-X[k])/Ts
83
sq [k] = a9 isq [k]dq [k] = dq [k-1] + a10 wdq [k-1]
sd [k] = a7 isd [k] + a8 r [k]Cem [k] = a6 r [k] isq [k]
Wdq [k] =a4 w [k] + a5 isq [k] /r [k]r[k]=a2 isd [k-1]+ a3 r[k-1]
isq[k]=a1(sin([k]+150) is1[k] + cos([k]) is2[k])isd[k]=a0(sin([k]+60) is1[k] + sin([k]) is2[k])Digital Model of a FOC Estimator
a0 = 2/3 a1 = 2/3a2 = Lm Te/Tra3 = 1 - Te/Tra4 = 1a5 = Lm/Tra6 =(3/2)pLm/Lra7 = Ls a8 = Lm/Lra9 = Ls a10 = Te
Design Methodology
84
Continuous Model
Discrete Model
Per Unit Discrete Model
Design Methodology
-
85
sq[k] = A9 isq[k]
dq[k] = dq[k-1] + A10wdq[k-1]
sd[k] = A7 isd[k] + A8 r[k]
Cem[k] = A6r[k] isq[k]
Wdq[k] = A4 w[k] + A5 isq[k]/r[k]
r[k] = A2 isd [k-1] + A3 r[k-1]isq[k] =A1(sin([k]+150) is1[k] + cos([k]) is2[k])isd[k] =A0(sin([k]+60) is1[k] + sin([k]) is2[k])
Per Unit Digital Model of a FOC Estimator A0 = a0A1 = a1A2 = a2Ib/bA3 = a3A4 = a4wb/wdqbA5 = a5Ib/(wdqbb)A6 = a6A7 = a7Ib/ bA8 = a8A9 = a9Ib/bA10 = a10wdqb
Design Methodology
86
abc to dqTransformation
(1)
Low PassFilter
(2)
dq, TL, sd et sqEstimator
(3)Integrator
(4)
is1
is2
isd
isq
r
dq
isd
dq
TL sd sq
Design Methodology
Example 1 : FOC Estimator algorithm
Library
Modular partitioning of the algorithm
87
Table(1)
TL*Isd*
Isq*dq to abc
Transformation(2)
HysteresisController
(3)
is1*
is2*
is3*
SaSbSc
is1 is2 is3
Design Methodology
Example 2 : Sliding Mode Torque Control algorithm
Creation of a specific Electrical System dedicated library
Library
Modular partitioning of the algorithm
88
Design Methodology
Current Control, Torque Control Speed Control,
Full Control AlgorithmsLevel 3Level 3
PI, PID, PPI, Hysteresis controller,
Regulation
PWM, SVM,
Modulation
abc-to-, -to-abc, abc-to-dq, dq-to-abc
Vector Operators
PLL, Torque Estimator, Flux EstimatorEstimation
Level2Level2
Level 1Level 1Registers, multiplexers,
demultiplexers,
Basic Operators
Adder, multiplier, sine-cosine, cordic,
Arithmetic Operators
-
89
Design Methodology / Web Site
90
Library of IP modules dedicated to the Control of Electrical Systems
9 VHDL Programs9Matlab Simulink Models9 Data-sheets
Design Methodology
91
Design Methodology
Verification of the algorithm functionalitySimulation procedure
Modular partitioning of the algorithm
Choice of the suitable sampling period and fixed-point format
92
Design Methodology
Induction motor
IFO Controller +
VSI
Estimator algorithm
Example 1 : Per Unit FOC Estimator functional model
1) Development of a continuous functional continuous model
Verification of the algorithm functionality
-
93
Design Methodology
Torque control algorithm
VSI SM
Example 2 : Per Unit Sliding Mode Torque Control functional model
94
Design Methodology
Choice of the sampling period and fixed-point format of the digital algorithm
2) Development of a discrete fixed-point specification model
Example1 : FOC Estimator specification model
95
Design Methodology
Example2 : Sliding Mode Torque Control specification model
96
Design Methodology
Example2 : Sliding Mode Torque Control specification model
-
97
Design Methodology
dq-to-abc transformation specification model
Dq-to-abc transformation Data Flow Graph (DFG)
+ +
5/6 /3
+
/2
Sin Sin Sin
x x
Sin
x x
isa[k] isb[k]
dq[k]
+ +
x x
A0A1
isd[k]isq[k]
U[p/Q0]
U[p/Q0]
U[p/Q0] U[p/Q0] U[p/Q0]
U[p/Q0] U[p/Q0]
S[n/Qn-1]S[n/Qn-1] S[n/Qn-1] S[n/Qn-1]
S[n/Qn-2]S[n/Qn-2] S[n/Qn-2]
S[n/Qn-2] S[n/Qn-2] S[n/Qn-2]S[n/Qn-2]
S[n/Qn-1] S[n/Qn-1]
Lots of possibilities in terms of parallelism 98
Design Methodology
Reduction of the consumed resources
Simulation procedure
Modular partitioning of the algorithm
Optimization procedure
99
Design Methodology
A1A2
x1x2
y
S[n/Qn-1]
S[n/Qn-1] x
+
F F
J
S[n/Qn-1]
S[n/Qn-1]S[n/Qn-1] S[n/Qn-1]
S[n/Qn-1]
S[n/Qn-1]S[n/Qn-1]
S[n/Qn-1]
Factorization Hardware resources Execution time
Defactorization Hardware resources Execution time
S[n/Qn-1]
x1 A1 A2 x2
S[n/Qn-1]S[n/Qn-1]
S[n/Qn-1]S[n/Qn-1]
S[n/Qn-1]
y
x x
+
100
Design Methodology
Generation of optimized hardware architecture (A3 methodology)
FF0 : Factorization Frontier 0
FF1 : Factorization Frontier 1
14Sine
16Multiplication
35Addition
FDFGDFGOprations
abc-to-dq transformation Factorized Data Flow Graph (FDFG)
F
0/3/25/6
+
SinFD
A0A1
D
x F D
F
J
+ +
isa[k]
isb[k]
dq[k]
isd[k]isq[k]
FF0
FF1
S[n/Qn-1]
U[p/Q0]
S[n/Qn-1]
U[p/Q0]
S[n/Qn-2]
U[p/Q0]
U[p/Q0] S[n/Qn-1]
S[n/Qn-2] S[n/Qn-1]
S[n/Qn-2]
-
101
Design Methodology
Simulation procedure
Modular partitioning of the algorithm
Optimization procedure
Architecture Design
102
Design Methodology
1) Modular Hardware Architecture Design
Inputs[k] Inputs [k+1] Inputs [k+2]
StartInput Data
Outputs [k] Outputs [k+1] Outputs [k+2]
EndOutput Data
Clk
TClkLatency*TClk
Data-path
Control unit
S1
Module name
Input Data Output Data
Start End
ClkReset
S2S3
S3
Generic Second Level Module Architecture
Generic Timing Diagram
Specific Library
103
Design Methodology
InputData
Global Data-path
OutputData
Module Name
Sub-Module 1
Start1 Start2 Start3 StartnEnd1 End2 End3 Endn
Start End
Clk
Sub-Module 3
Sub-Module 2
Reset
Sub-Module n
Global Control UnitSel en
Third Level Module Architecture
2) Design of the whole algorithm architecture
Specific Library
104
Design Methodology
Sequencer
Data-path
LP_Filter
isa
isb
isd
isq
r
dq
isddq dq, TL, sd and sqEstimator
Sequencer
Data-pathabc-to-dq
transformation
Sequencer
Data-path
Integrator
Sequencer
Data-path
TL sd sqGlobal data-path
Global sequencer
FOC Estimator Architecture
Example : FOC Estimator algorithm architecture
-
105
Design Methodology
3) VHDL coding of the architecture
106
System Level
Behavioral Level
RTL or Synthesis Level
Physical Level
Simulation Simulation
Synthesis
Behavioral HDL
Circuit Specifications
Simulation Simulation
Analog HDL
Test Bench
Mixed Simulation Environment
FPGA
ASIC
Design Methodology
3) VHDL coding TOP DOWN Approach
107
Reuse and IP Behavioral Model
Blocks
LibraryLibrary
RTL or Synthesize Level
Physical Level
Behavioral Level
System Level
LibraryLibrary Reuse and IP RTL or Synthesize Model Blocks
Design Methodology
3) VHDL coding - Reusability
108
Design Methodology
Simulation procedure
Modular partitioning of the algorithm
Optimization procedure
Architecture Design
Validation of the architecture
-
109
Design Methodology
FPGA Target
Configuration process
Stimuli Patterns
TxRx
Architecture to be tested
Serial interface
Host-PC Results Comparison Results
Reception
Simulation Results Hardware in the loop Results
First attempt success guarantee
Functional model simulation
1) Hardware in the loop test
110
Design Methodology
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35-5
-4
-3
-2
-1
0
1
2
3
4
5
isd
isq
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35-5
-4
-3
-2
-1
0
1
2
3
4
5
isd
isq
Simulation results (isd(A) and isq(A)) Hardware in the loop results (isd(A) and isq(A))
time(s) time(s)
Example : Hardware in the loop results of the FOC Estimator
Start-up and a speed reversal at 0.27s of a 1 Kw induction machine controlled by a classical Indirect Field Oriented Strategy.
111
Design Methodology
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35-8
-6
-4
-2
0
2
4
6
8
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35-8
-6
-4
-2
0
2
4
6
8
Simulation results (T(Nm)) Hardware in the loop results (T(Nm))
time(s) time(s)
112
Design Methodology
Simulation results r(Wb)
time(s)0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Hardware in the loop results r(Wb)
time(s)0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Slight difference between simulation and hardware in the loop results
-
113
Design Methodology
2) Experimental test
FPGA (Actel Fusion) 114
Design Methodology
FPGA (Actel Fusion)
115
Conclusion
Algorithm Hardwarearchitecture
Design Methodology
Advantages :
Less intuitive and more automatic approach
Reduction of the development time
Optimization of the consumed resources
Reusability of the design
Development of a specific library
First attempt success guarantee116
FPGA-Based Current Controllers for
Synchronous Machine Drive
Advantages & Features
1st Case Studies Series:
-
117
Control Algorithm Execution Time
(a)
(b)
(c)
(k-1)Ts (k)Ts (k+1)Ts
(k-1)Ts
TADC
(k)Ts
(k+1)Ts
(k+1)Ts
TC
(k)Ts
(a)
(b)
(c)
(k-1)Ts (k)Ts (k+1)Ts
(k-1)Ts
TADC
(k)Ts
(k+1)Ts
(k+1)Ts
TC
(k)Ts
(a) General purpose microcontroller:- c limitations !
(b) DSPcontroller:- VSI limitations
(c) FPGA-based controller:- Quasi-analog behavior
118
Experimental Set-up
InterfaceInterface
Vf
Amplification
Electrical SupplyElectrical Supply
ADC
Controlled Controlled InverterInverter
Synchronous MachineSynchronous Machine
Encoder
isbisb
FPGAFPGA
Controller
Serial Interface
ADC Interface
isa
Sa Sb Sc
ReferencesRS232
isa isbADC Control
Host PC
isbisa
Encoder Interface
dq
119
Voltage Source Inverter
Encoder
Current sensors
SM
Experimental Set-up
120
Experimental Set-up
FPGA Spartan3
400.000 GatesAD Conversion Board
VSI Interface
Board
-
121
Current Controllers Based on ON-OFF Regulators
122
Current Controllers Based on ON-OFF regulators
9 Simplest current regulation schemes
Tow Main groups
Variable switching frequency ON-OFF regulators
Limited switching frequency ON-OFF regulators
9Well adapted for analog controls 9Well adapted for analog & digitalcontrols
123
Variable Switching Frequency ON-OFF regulators
9 Example 1 : Independent three phase free running hysteresis regulators
Sa
Vrd
SM
SbSc
isa*
isb*isc*
isa isb isc
isd*
isq*
Encoder
dq
dq-to-abc
p
E
124
Variable Switching Frequency ON-OFF regulators
9 Example 1 : Independent three phase free running hysteresis regulators
wait
Start_AD=1wait
End=1
Start_OO=1
Start=1
Reset
End_AD=1
Global control unit FSMGlobal control unit
ADInterface
dq-to-abc2 level hysteresis
comparators
isa*
isb*
isc*isd*
isq*
Algorithm control unit
Start End
SaSbSc
isaADisbAD
AD Control
Clk Clk
ON-OFF Current controllerClk
dq
Clk
isaisbiscClk
End_ADStart_AD
Start_OO End_OO
H
Hardware Architecture
9 TS = TAD = 2.4 s
9 Tex= TAD+ tIP+ tH2 = 2.74 sController computation time
Ts
Tex
Application Sa,b,c[k-1]
tAD tIP tH2tAD tIP tH2
tAD tIP tH2
Application Sa,b,c[k] Application
Sa,b,c[k+1]
Sample isa[k-1]isb[k-1] dq[k-1]
Sample isa[k]isb[k] dq[k]
Sample isa[k+1]isb[k+1] dq[k+1]
-
125
Variable Switching Frequency ON-OFF regulators
Low execution time
Effects of sampling and delays are very negligible
H
isaisa
isaisa
H
Execution time = 50 Execution time = 50 ss Execution time = 2.74 Execution time = 2.74 ss
H
isaisa
H
isaisa
126
Variable Switching Frequency ON-OFF regulators
Low execution time
Effects of sampling and delays are very negligible
H
isa
isaisb
Execution time = 50 Execution time = 50 ss Execution time = 2.74 Execution time = 2.74 ss
H
isa
isaisb
H
isb
H
isb
127
Variable Switching Frequency ON-OFF regulators
Sa
Vrd
SM
SbSc
isa*isb*isc*
isaisb isc
isd*
isq*
Encoder
dq
dq-to-abc
p
E
Table
abc-to-
abc-to-+-
+-
is*
is*
isis
isis
isb
-
129
Variable Switching Frequency ON-OFF regulators
Low execution time
Effects of sampling and delays are very negligible
H
isis
isis
H
Execution time = 50 Execution time = 50 ss Execution time = 2.92 Execution time = 2.92 ss
H
isis
H
isis
130
Variable Switching Frequency ON-OFF regulators
Low execution time
Effects of sampling and delays are very negligible
H
isis
isis
H
Execution time = 50 Execution time = 50 ss Execution time = 2.92 Execution time = 2.92 ss
H
isis
H
is is
131
Limited Switching Frequency ON-OFF regulators
9 Example 1 : Independent three phase free running hysteresis regulators
Sa
Vrd
SM
SbSc
isa*isb*isc*
isa isb isc
isd*
isq*
Encoder
dq
dq-to-abc
p
ETs
132
Limited Switching Frequency ON-OFF regulators
9 Example 1 : Independent three phase free running hysteresis regulators
wait
Start_AD=1wait
End=1
Start_OO=1
Start=1
Reset
End_AD=1
Global control unit FSM
9 TS = tAD = 100 s
9 Tex= tAD+ tIP+ tH2 = 2.74 sController computation time
Application Sa,b,c[k]
Sampleisa[k]isb[k] dq[k]
Ts
FsStart
Tex
tAD tIP tH2 tAD tIP tH2
Ts
Sampleisa[k+1]isb[k+1] dq[k+1]
Application Sa,b,c[k+1]
Global control unit
ADInterface
dq-to-abc2 level hysteresis
comparators
isa*
isb*
isc*isd*
isq*
Algorithm control unit
Start End
SaSbSc
isaADisbAD
AD Control
Clk Clk
ON-OFF Current controllerClk
dq
Clk
isaisbiscClk
End_ADStart_AD
Start_OO End_OO
H
Hardware Architecture
-
133
Limited Switching Frequency ON-OFF regulators
Low execution time
Effects of sampling and delays are very negligible
isa
Execution time = 50 Execution time = 50 ss Execution time = 2.92 Execution time = 2.92 ss
isa
THD=14.9% THD=8.9%
Square current vector error (is+is) Square current vector error (is+is)
134
Limited Switching Frequency ON-OFF regulators
9 Example 2 : Space vector based regulator with three level hysteresis comparators and look-up table working in the - reference frame
Vrd
SM
isa*isb*isc*
isaisb isc
isd*
isq*
Encoder
dq
dq-to-abc
p
E
Table
abc-to-
abc-to-+-
+-
is*
is*
isis
isis
isb
-
137
Current Controller Based on PI Controllers
138
Current Controller Based on PI Controllers
Sa
Vrd
SM
SbSc
Vsa*Vsb*Vsc*
isa isb isc
Vsd*
Vsq*
Encoder
dq
dq-to-abc
p
E
PWM Modulator
dq-to-abc
isd
isq
isd *
isq *
+-
+-
139
Current Controller Based on PI Controllers
abc-to-dq
isd*
isq*
AD Interfaceis1AD
is2AD
AD Control
Global control unit
Algorithm controller
StartEnd
Clk
Clk
Clk
Vector current controller
isaisb
Clk
Start_VC End_VC
End_ADStart_AD
PIClk
Clk
PI
dq-to-abc
Clk
Vsd*
Vsq*PWM
Vsa*
Vsb*
Vsc*
Clk
dq
Sa
Sb
Sb
isqisd
Hardware Architecture140
Current Controller Based on PI Controllers
9 Case 1 : Synchronized PWM
Application Vsa,b,c*[k]
Sampleisa[k]isb[k] dq[k]
tPWM/2Tex tPWM/2
Carrier
Start
End_VC
Ts = tPWM/2
tAD tVC tAD tVC tAD tVC
Application Vsa,b,c*[k+1]
Sampleisa[k+1]isb[k+1] dq[k+1]
Application Vsa,b,c*[k+2]
Sampleisa[k+2]isb[k+2] dq[k+2]
9 TS = TPWM / 2 9 Tex= tAD+ tVC = 3.28 sVector Control computation time
-
141
Current Controller Based on PI Controllers
9 Case 1 : Synchronized PWM
11 >
2 >
1) Ch 1: 200 mVolt 250 us 2) Ch 2: 2 Volt 250 us
Carrier
Ts
11 >
2 > 1) Ch 1: 200 mVolt 10 us 2) Ch 2: 2 Volt 10 us
1 >
2 > 1) Ch 1: 200 mVolt 10 us 2) Ch 2: 2 Volt 10 us
Carrier vertex
Start End_VCTex Start End_VCTex
Carrier vertex
142
Current Controller Based on PI Controllers
9 Case 2 : Non Synchronized PWM
Application Vsa,b,c*[k]
Sampleisa[k]isb[k] dq[k]
tk tk+1 tk+2 tk+m tk+m+1 tk+m+2
Tex
Carrier
Ts
Application Vsa,b,c*[k+m]
Sampleisa[k+m]isb[k+m] dq[k+m]
11 >
2 >
1) Ch 1: 200 mVolt 2.5 us 2) Ch 2: 1 Volt 2.5 us
Start End_VC
Carrier
Ts Tex
9 TS = 5 s 9 Tex= tAD+ tVC = 3.28 sVector Control computation time
143
Current Controller Based on PI Controllers
isa
THD=11.1%
isbCarrier Frequency = 1KHz
Carrier Frequency = 1KHz
THD=11.1%
isa
Carrier Frequency = 3KHz
isa
isb
isa
isb
9Experimental Results
THD=4.1%
144
Current Controller Based on PI Controllers
9Experimental Results
11 >
2 >
1) Ch 1: 1 Volt 25 ms 2) Ch 2: 1 Volt 25 ms
isd
isq
Vsa
Vsb
-
145
Predictive Current Controller
146
Predictive Current Controller
+
=
rd
sq
sd
dqsq
sr
sq
sd
sq
sd
sqdq
sq
sd
dqsq
sd
sd
sq
sd
iVV
tLM
L
Lii
Tt
LL
tLL
T
dtdidt
di
)(10
001
1)(
)(1
9 Sate model of the synchronous machine in the dq rotor reference frame
9 Digital Prediction Equations
+==
+=+
+=+
][][][][][][][][
][)1(])[][(]1[
][)1(])[][(]1[
kikMkikLkekikLke
where
kiTT
kekVLT
ki
kiTT
kekVLT
ki
rddqsrsddqsdsq
sqdqsqsd
sqsq
ssqsq
sq
ssq
sdsd
ssdsd
sd
ssd
147
Predictive Current Controller
=
js
js
dqdq
dqdqj
sq
jsd
VV
VV
)cos()sin()sin()cos(
7 different stator voltage vectors Vsdqj=[Vsdj Vsqj]t (j=0..7)
7 different directions tj(j=0..7) and errors j(j=0..7)
+==
+=+
+=+
][][][][][][][][
][)1(])[][(]1[
][)1(])[][(]1[
kikMkikLkekikLke
where
kiTTkekV
LTki
kiTTkekV
LTki
rddqsrsddqsdsq
sqdqsqsd
sqsq
ssq
jsq
sq
sjsq
sdsd
ssd
jsd
sd
sjsd
]1[][]1[ * +=+ kikiki jsdqsdqjsdqrrr
][]1[][ kikikt sdqj
sdqj
rrr +=
148
Predictive Current Controller
d
q
isdq[k]
isdq*[k]t0,7 t4
t5
t6t2
t3
t1
isdq1[k+1]isdq1[k+1]
isdq[k]isdqj[k+1]
isdq*[k]
isdqj[k+1]tj[k]
Predicted current error vector Predicted current error vector isdqisdqjj Example of different prediction possibilitiesExample of different prediction possibilities
-
149
Predictive Current Controller
SM
Vrd
dq
Optimization
E
isd*
isd
isq
esd esq
dq
(isdqj)(j=0..7)SaSbSc
Prediction
Couplingterms
isq*
pm
d/dt
isa
isbabc-to-dq
9 Predictive Controller Principle
150
Limited Switching Frequency ON-OFF regulators
9 Hardware architecture
wait
Start_AD=1wait
End=1
Start_OO=1
Start=1
Reset
End_AD=1
Global control unit FSM
9 TS = 100 s
9 Tex= tAD+ tPr = 4.52 sPredictive Controller computation time
AD Interface
isaADisbAD
AD Control
SaSbSc
Global control unit
Algorithm controller
Start End
Clk
ClkPredictive current controller
Start_Pr End_Pr
End_ADStart_AD
EAD
abc-to-dq
Clk
Couplingterms
Clk
Prediction& optimization
Clk
isd*isq*
E
isdisq
esdesq
Clk
Speed Estimator
Clk
p
offset
dq++
m
isa
isb
dq
Application Sa,b,c[k]
Sampleisa[k] isb[k] dq[k]
FsStart
Ts
Tex TstAD tPr tAD tPr
Sampleisa[k+1]isb[k+1] dq[k+1]
Application Sa,b,c[k+1]
151
Current Controller Based on PI Controllers
9 Experimental Results
isa
THD=8.8% isb
THD=8.8%
isa
isa
isb
Vsa
Vsb
152
Current Controller Based on PI Controllers
9 Experimental Results
+ Isn
- Isn
+ Isn
- Isnisd
isq
isd
isq
-
153
FPGA-Based speed control for
Synchronous Machine Drive using PPI controller
154
Problem Positioning
Objective : Development of a high performance FPGA-based speed controller
Most important criteria for the speed control
9 Fast speed dynamic
9 Accurate speed response
9 Quick speed recovery from disturbances
155
Speed Controller Design
Vsd
isd
Vrd
ird
Vsqisq d
q
dq Sa
dq
sqsd
sdssd dtd
iRV +=
sdsq
sqssq dtd
iRV ++=rdsrsdsdsd iMiL +=
sqsqsq iL=
sdsrrdrdrd iMiL +=)(
23
sdsqsqsde iipT =
9 Synchronous machine model
156
Speed Controller Design
9 Current controller
Sa
Vrd
SM
SbSc
isa*
isb*
isc*
isa isb isc
isd*
isq*
Encoder
dq
dq-to-abc
p
E
-
157
Speed Controller Design
9 Current controllerCurrent Controller Timing Diagram
TAD TCC TAD TCC
Ts=100 s Ts=100 s
tk tk+1
Tex=2.74s
Sample isa,b[k]dq[k]
tk+Tex
Application Sa,b,c[k]
tk+1+Tex
Sample isa,b[k+1]dq[k+1]
Application Sa,b,c[k+1]
time
isa isb
isa
isb
isq
isd
Isn
- Isn
158
Speed Controller Design
9 Speed controller synthesis
Current Control Loop
Speed Control LoopInternal Loop (Proportional controller)
External Loop (PI controller)
isq1
1+sT isqKvPI*
+-
+-
i isq*
pMsrird-+
fJsp+
Tr
159
Speed Controller Design
9 Speed controller synthesis
Internal Loop (Proportional Controller)Impose the controlled system poles at the desired positions
Internal speed control loop transfer function
isq
rdsrv
isq
isq
rdsrv
i
JTiMpKs
Ts
JTiMpK
5.11
5.1
++=
=1
Proportional Gain
2)2
1(
1
isq
i
Ts +
=
Re
Im
=1
Roots Locus 160
Speed Controller Design
9 Speed controller synthesis
PI* +-
2)2
1(
1
isqTs +
External Loop (PI Controller)- Zero steady-state error
- Impose the shape and the dynamic of the speed response
External speed control loop transfer function
isq
rdsrvp
isq
isq
rdsrvp
JTiMpKK
sT
s
JTiMpKK
5.12
1
5.1
*
++=
isq1
1+sT isqKvPI*
+-
+-
i isq*
pMsrird-+
fJsp+
Tr
2n n2
-
161
Speed Controller Design
9 Speed controller synthesis
Current Controller
Speed ControllerSa
400V/50Hz
Vrd
SM
SbSc
isa*
isb*
isc*
isa isb isc
isd*0isq*Kv
Encoderd/dt
Speed Estimator
dq
dq-to-abc+
-
+
-*
Internal Loop
External Loop
162
Speed Controller Design
9 Speed estimator design
)]1[][
(1024
4][T
kkk mm =
SM1024 points
Absolute Encoder
10 bits(P9 P8..P1 P0)
Backward difference
Variable sampling periodOperating mode synchronized with state changes of the LSB of theencoder
+ 1
kTSensek 1
10244][ =
Denotes the time spent for one unit displacement of the encoder
Determined via the state changes of the two LSB P0 and P1
163
Speed Controller Design
9 Speed estimator design
P0Counter 0 1 2 nk 0 1 2 nk+1
Tk T(k+1)
1/Fc
c
kk F
nT =
Tk ComputationSense Computation
-1(negative)1011
+1(positive)0011
-1(negative)0110
+1(positive)1110
-1(negative)0001
+1(positive)1001
-1(negative)1100
+1(positive)0100
SenseP1[k+1]P0[k+1]P1[k]P0[k]
kTSensek 1
10244][ =
Denotes the time spent for one unit displacement of the encoder
Determined via the state changes of the two LSB P0 and P1
164
Speed Controller Design
9 Speed estimator design
Speed Estimator Hardware ArchitectureSpeed Estimator Hardware Architecture
Compteur
nk
Fcompt
Rc
- +
0en2
en3
en0
en1
en0
en1
Sense Computation
XORd0
P0 P1
ETAT0
ETAT1en0=1
ETAT2Fcompt=1
S
||-||
ETAT3en2=1
ETAT4en3=1
ETAT5en1=1Rc=1
Reset
Clk Start=1
Clk
Clk
Clk d0=0
d0=1
Clk
Clk
Clk
kTSensek 1
10244][ =
Data-Path
Control Unit
-
165
Speed Controller Design
9 Speed controller architecture
Speed Controller Timing Diagram
TAD TCC TAD TCC
Ts=100 s Ts=100 s
tk tk+1
Tex=3.45s
Sample isa,b[k]dq[k]
tk+Tex
Application Sa,b,c[k]
tk+1+Tex
Sample isa,b[k+1]dq[k+1]
Application Sa,b,c[k+1]
time
FPGA-based Speed controller
Global control unit
Speed controller control unit
AD InterfaceP-PI
(dq/123)3 Phases hysteresis controller
Speed estimator
m
offset
Clk Clk Clk Clk
Clk
C1C2C3
Clk
Clk
isd*=0
*
Start End
is1 is2 is3
is1_ADis2_ADAD
control
isq*
is1*
is2*
is3*
TSCTSC
Note : The speed estimator works independently from the other modules and is synchronized to the state changes of the LSB of the encoder
166
Speed Controller Design
InterfaceInterface
Vrd
Amplification A/DEncoder
isbisc
dq
FPGAFPGA
Speed Controller
Serial Interface
AD Interface
isa
Sa Sb Sc
ReferencesRS232
isa isbAD Control
Host-PC
isaisb
Spartan3 Xc3s400 (400.000 gates)
400V/50Hz
9 Experimental Set-up
167
Speed Controller Design
9 Experimental ResultsStep Speed Response Speed tracking performance
=200 rad/s
=0 rad/s
=-200 rad/s
=200 rad/s
=-200 rad/s
=200 rad/s
=200 rad/s
=0 rad/s
168
Speed Controller Design
9 Experimental Results
isa
isb
Current waveforms
isa
isb
Current waveforms for a reversal speed operation
Response to a step of a rated load torque
TL=5Nm
-
169
Conclusions
A full FPGA-based speed controller for SM drive has been presented
A very efficient P-PI speed regulator has been synthesized
An original speed estimator has been developed, it allows to obtain the best accuracy
An original speed estimator has been developed, it allows to obtain the best accuracy
The obtained experimental results give proof of the ability of the developed speed control system to achieve an efficient and robust speed control under different operating conditions
170
Induction Motor Experimental Set-up
IMIM400V/50Hz
LOAD
Encoder
10
AD Control
ReferencesRS232
12
12
Gate pulses
AD Interface
UART
isaisbisc
FPGA
ADcontrolleralgorithm
VSI Interface
Induction Motor Experimental Set-up
VSIInterface
and Control Boards
IM
L E
Laboratoire Systmes lectriques172
Induction Motor Experimental Set-up
VSI Interface
Board
AD Converters Board
FPGA Spartan 2
100.000 Gates
-
173
Induction Motor Experimental Set-up
Load Incremental Encoder
Induction Machine
Load Control VSI
University of Aleppo
174
Induction Motor Experimental Set-up
VSI Interface Board
ADC Board
FPGA Spartan 3 400.000 Gates
175
2nd Case Studies Series:
FPGA-based Intelligent Controllers for AC Drives and AC Generators:
* A PWM control system modelling / design / FPGA implementation using VHDL
9 Modelling an induction motor drive system using an FPGA PWM neural controller
9 Modelling a diesel driven generator employing fuzzy-logic/PWM FPGA control
176
* PWM Control System Design Using VHDL
SYNCHRONISATION: (Carrier-triangular / M odulator-sinusoidal)Counter output bus
Triangular waveform generator M ax_count
M ax_count Clock (Reversible up-down counter)
Start Reset OUT_SIGNAL CONTROL COM PARATOR
Clock (PW M )
Next Address M emory generator
(Sinewave)
-
177
Three-Phase Sinusoidal PWM Pattern Generation
178
Block diagram of the 3-phase PWM circuit
179
Complete VHDL Code - 1 Phase PWM Generatorlibrary ieee;use ieee.std_logic_1164.all;entity pwm is
port(out_signal: out std_logic;clock,start: in std_logic;Max_count: in integer);
end pwm;architecture behav of pwm is
signal counter_out_bus : integer;signal next_pulse,reset: std_logic;signal val_max, adr, data: integer;
begincounter_rev: process(clock,reset)
variable direction: std_logic :='1';variable v: integer :=0;
beginif reset'event and reset='1' then
v:=1;elsif clock'event and clock='1' then
if direction='1' thenif v-val_max thenv:=v-1;
elsev:=v+1;direction:='1';
end if;end if;
end if; counter_out_bus=0 and adr
-
181
architecture arch_test of test iscomponent pwm
port(out_signal : out std_logic;clock,start: in std_logic;Max_count: in integer);
end component;signal clock: std_logic :='0';signal start: std_logic := '0';signal Max_count: integer;signal out_signal: std_logic;
beginMax_countMax_count,
out_signal=>out_signal);end arch_test;configuration conf_test of test is
for arch_testend for;
end conf_test;
reset
-
185
The RLe Equivalent Circuit of the Induction Motor
( )[ ] ( )
==
+=++==
=
s
s
srer
srr
r
mssm
srrer
srr
r
m
s
r
2mrs
iiuu
jiRLLiLiLjiR
LLe
RRL
LLLL
186
The Neural PWM Controller
187
Speed Control PrincipleszThe control is achieved in polar coordinates (module and angle).zThe rotor speed is controlled by compensating the slip frequency.zSlip frequency is kept constant for any load torque & any rotor speed.zThe slip frequency depends on the angle between e and is,,, controlled
by means of:* stator frequency* stator current amplitude
zThe current amplitude Is is corrected according to the position of vector ein the complex plane.zThe stator frequency fs follows the reference speed profile. zVery fast stator frequency changes have to be avoided because they cause
slow transient response.
188
Basic Control Algorithm
Improved Control Algorithm
Simulation
-
189
Neural PWM Controller VHDL Design for Implementation
190
Simulation /Test Results PWM Neural Controller
191
Test Results - Motor
Speed control at step torque riseControlled versus natural torque characteristic
192
Achievements
zInduction motor drives can be controlled using neural algorithms, implying a smaller number of calculations than vector control.
zThe proposed speed control algorithm can be expressed as a set of mathematical equations written in polar co-ordinates.
zThe angle and sector calculations are carried out by hardware implemented neural networks.
zThe entire control scheme has been modelled and designed in VHDL, synthesised and implemented into Xilinx XC4010 FPGA.
zThe implementation offers a cost-effective solution for industrial applications without high dynamic requirements.
zTest results have confirmed correct operation of the controller.
-
193
2. MODELLING A STAND ALONE DIESEL DRIVEN GENERATOR SET USING
FUZZY-LOGIC AND PWM CONTROL
SynchronousGenerator
Diesel Engine
PWM ControlPWM ControlFuzzyFuzzy ControlControl
VDC
Fuel Control
RECTIFIER PWM INVERTER
C
STAND-ALONE
GENERATOR
3 phaseoutput
FPGA FPGA ControllerController
194
Project BackgroundIn a given synchronous machine the operational speed is dependent onthe desired output frequency.
Variable speed operation of generators increases design freedom: speedis not determined by the desired electrical frequency.
It allows engine-generators systems to be operated at speeds whichoptimise desired parameters such as noise, vibrations, fuel efficiency, engine emissions.
The research aim is to design and build a control system for a stand alone variable speed PM synchronous generator.
This has been developed on the basis of fuzzy logic, using VHDL and is implemented in Xilinx FPGA.
195
PWM Inverter Simulation Results
-300
0
300
600Vout
Vdc
time [ms]196
Fuzzy Variable Speed Governor Fuzzy Variable Speed Governor (FVSG) - controller based on fuzzy logic.
Designed using VHDL for easy correction and future integration with othercomponents to extend the system.
System configuration allows variable speed operation of the generator.
valve engine generator rectifier inverter
Fuzzifier
FuzzyInferenceMachine
Fuzzy Rule Base
Defuzzifier
xx 11
xx 22
a.c.output
FVSGFVSG
PWMControl
ddt
-
197
DC Voltage Fuzzy Controlled Response to Load Current Step Increase
0
200
400
600
800
1000
1200
1400
1 21 41 61 81 101 121 141 161 181 201 221 241 261 281 301 321 341 361 381
ILOAD =10A
ILOAD =20A
DC Voltage (Normalised to 1000)Load Current
Reference Voltage
time (sampling units)
Voltage (normalised)
198
050
100150200250300350
0 5 10 15 20 25 30 35 40 45
time [sec]
d
.
c
.
v
o
l
t
a
g
e
[
v
o
l
t
]
Experimental Test Results
050
100150200250300350
0 5 10 15 20 25 30 35 40 45
time [sec]
d
.
c
.
v
o
l
t
a
g
e
[
v
o
l
t
]
Without controller With controller
Step Change in a.c. Load Current d.c. Voltage response
199
AchievementsPWM controller
voltage control using PWM is a simple and effective strategy forobtaining and maintaining the desired output voltage parameters.
Fuzzy logican effective design solution for the speed governor.able to produce a competent control system without the need for a precise mathematical model of the plant.the controller is reconfigurable by changing the rule base.design can be easily extended to include more parameters.
VHDLdesign, modelling & simulation performed on a single platformthe same design tool can be used for hardware implementationreusable design modules are producednew developments of the design can easily be performed
200
General ConclusionsA novel modelling technique is proposed for the holistic investigation of engineering systems. This is based on Hardware Description Languages (VHDL).
The sample systems were developed from idea, through modelling / simulation, to complete systems commissioning, in short time, giving further advantages: 9easy integration of electronic controllers in complex engineering system models. 9 reliable framework for design verification9high confidence in correct first time operation 9allows rapid FPGA prototyping of electronic controllers9gives multiple choices for controllers final implementation technology9high degree of flexibility
A CAD platform independent model & design are developed and therefore valuable IPs can be produced, in co-relation with the modern principles of design reuse.
Concurrent engineering basic rules (unique EDA environment and common design database) are fulfilled.
Estimation: HDL based holistic modelling methodologies will be increasingly used in the future and expanded to encompass other areas of engineering systems.
-
201
Recent DevelopmentsHandelHandel--CC a novel compiler for Hardware-Software co-design from Celoxica.
C/C++ System ModelHandel-C compiler Assembly code compiler
VHDL hardware description Microprocessor software code
RosettaRosetta is a language for modelling/describing engineering systems Presently the focus is on complex electronic systems -> SOC Being explored for complex mechanical systems Defines systems by writing and composing models with respect to domains. Consists of a syntax (a set of legal descriptions) and a semantics (a meaning
associated with each description)
MilleniumMillenium MachineMachine new EPSRC (UK) funding initiative for holistic modelling of engineering systems (systems of systems). 202
General Conclusions
The simultaneous increase of the control algorithm complexity and the chip density implies the use an efficient design methodology. A modeling technique is proposed for the holistic investigation of power electronic systems. This is based on System Level Modeling Languages or HDL and allows rapid FPGA prototyping of the control systems. Three main design rules are presented.
the algorithm refinement, the modularity, the systematic search for the best compromise between the control performances and the architectural constraints (see A3 section).
Full and timely examples are presented to illustrate the benefits of FPGA implementation when using the proposed design approach. It is demonstrated that in both cases a low cost FPGA-based controller can greatly improve the control performance, especially due to the reduction of execution time, while keeping a high level of flexibility.
203
Perspectives In the near future, the complexity of the control systems will continue to grow.
The tasks devoted to the control algorithm will no longer be limited to regulation but will have to manage diagnosis and fault-adaptive on line control.
The research effort on the theory and the applications of dynamic reconfiguration is crucial.
Network-on-a-Chip (NoC) SoC design that can include digital control and its analog interface (sensors, ADC, power drivers, etc.).
Co-design issue must be addressed, since the borders between software and hardware are rapidly vanishing. The main problem in this case is to propose automatic rules of partitioning, based on relevant
quantitative indicators.
Another interesting direction of research is based on the following observation: a control algorithm, when implemented in an FPGA, can have a very short execution time due to the high degree of parallelism of its architecture. At the same time, the constraints imposed by the power electronic components imply a sampling period that is much higher than the execution time. The resulting wasted time could be advantageously employed.
Several examples of relevant FPGA utilizations in this context were presented. They consist of predictive control, over-sampling strategies, multi-plants control, etc. All these very promising control paradigms must still be improved.
204
BibliographyM.N. Cirstea, A. Dinu, J. Khor, M. McCormick, "Neural and Fuzzy Logic Control of Drives and Power Systems", Elsevier Science Ltd., 2002.M.N. Cirstea, A. Dinu, D. Nicula: "A Practical Guide to VHDL Design", EdituraTehnica, Bucharest, Romania, 2001, ISBN: 9733115398.A. Dinu: "FPGA Neural Controller for Three Phase Sensorless Induction Motor Drive Systems", PhD Thesis, De Montfort University, 2000.J. Khor, "Intelligent Fuzzy Logic Control of Generators", PhD Thesis, De Montfort University, UK, 1999.A. Zregh: Holistic Modelling of Stand Alone Generators, MPhil thesis, De Montfort University, UK, 2003. B.K Bose: Modern Power Electronics & AC Drives, Prentice Hall, 2002.M. P. Kazmierkowski, R. Krishnan, F. Blaabjerg, J. D. Irwin (Editors): Control in Power Electronics: Selected Problems, Academic Press, 2002. D.L. Perry: "VHDL", McGraw-Hill, 1998.Xilinx home page: http://www.xilinx.com/Celoxica home page: http://www.celoxica.com/Rosetta home page: http://www.sldl.org/
-
205
Bibliography F. Ricci, H. Le-Huy, An FPGA-based rapid prototyping platform for variable-speed drives, in Proc. IEEE IECON02 Conf., 2002, pp. 1156-1161. L. Charabi, E. Monmasson, I. Slama-Belkhodja, Presentation of an efficient design methodology for FPGA implementation of control system application to the design of an antiwindup PI controller, in Proc. IEEE IECON02 Conf., 2002, pp. 1942-1947. R. Andraka, A survey of CORDIC algorithms for FPGAs, in Proc. ACM/SIGDA Conf., 1998, pp. 191-200. S.A. White, Applications of Distributed Arithmetic to Digital Signal Processing: A Tutorial Review, IEEE ASSP Mag., pp. 4-21, July 1989. F. Zhengwei, J.E. Carletta, R.J. Veillette, A methodology for FPGA-based control implementation, IEEE Trans. Control Systems Technology, Vol. 13, n6, pp. 977-987, Nov. 2005. D. Menard and O. Sentieys. Automatic Evaluation of the Accuracy of Fixed-point Algorithms, in Proc. IEEE/ACM Conference on Design, Automation and Test in Europe, 2002, CD-ROM. K. Kebbati, Y.A. Chapuis, F. Braun, IP modules for motor control FPGA/ASIC integration, in Proc. IFIP Conf., 2001, pp. 385-390. Texas Instruments DSC Group, A software modularity strategy for Digital Control System motor, SPRU485A, August 2001,Revised October 2003. T. Grandpierre, C Lavrenne and Y. Sorel, Optimized rapid prototyping for real-time embedded heterogeneous multiprocessor, in Proc. CODES99 7th International Workshop on Hardware/ Software Co-Design Conf., 1999, CD-ROM. E. Monmasson, J.C. Hapiot, M. Granpierre "Analysis of a current controller for AC drives entirely based on FPGAs," in Proc. ICEM, Conf., Sept. 1994, vol. 3, pp. 1-5. S. Berto, A. Paccagnella, M. Ceschia, S. Bolognani, M. Zigliotto, Potentials and pitfalls of FPGA application in inverter drives - a case study, in Proc. IEEE ICIT Conf., 2003, Vol. 1, pp. 500-505. Y.A. Chapuis, J.P. Blonde, F. Braun, FPGA Implementation by Modular Design Reuse Mode to Optimize Hardware Architecture and Performance of AC Motor Controller Algorithm, in Proc. of 11th EPE-PEMC Conf., 2004, CD-ROM. K.V. Ling, S.P. Yue and J.M. Maciejowski, Model Predictive Control on a Chip, in Proc. IEEE ACC Conf., 2006, CD-ROM. A. Fratta, G. Griffero, S. Nieddu, Comparative analysis among DSP and FPGA-based control capabilities in PWM power converters, in Proc. IEEE IECON Conf., 2004, Vol. 1, pp. 257-262. F. Blaabjerg, P.C. Kjaer, P.O. Rasmussen, C. Cossar, Improved digital current control methods in switched reluctance motor drives, IEEE Trans. Power Electron., vol. 14, n3, pp. 563-572, May 1999. O. Garcia, P. Zumel, A. de Castro, J.A. Cobos, J. Uceda, An automotive 16 phases DC-DC converter, in Proc. IEEE PESC Conf., 2004, Vol. 1, pp. 350-355. J. Chen; P.C. Tang, A sliding mode current control scheme for PWM brushless DC motor drives, IEEE Trans. Power Electron., vol. 14, n3, pp. 541-551, May 1999. C. Attaianese, V. Nardi, G. Tomasso, A Novel SVM Strategy for VSI Dead-Time-Effect Reduction, IEEE Trans. Indus. Appl., vol. 41, pp.1667-1674, Nov/Dec 2005.
206
K. Bondalapati, V.K. Prasanna, Reconfigurable computing systems, Proceedings of the IEEE , Vol. 90, pp. 1201-1217, Jul. 2002. E. Monmasson; B. Robyns; E. Mendes, B. De Fornel, Dynamic reconfiguration of control and estimation algorithms for induction motor drives, in Proc. IEEE ISIE Conf., 2002, pp. 828 833. Y.Y. Tzou, J.J. Jyang, A programmable Current Vector Control IC for AC Motor Drives, in Proc. IECON99 Conf., 1999, CD-ROM. K. Tazi, E. Monmasson and J.P. Louis, Description of an entirely reconfigurable architecture dedicated to the current vector control of a set of AC machines, in Proc. IEEE-IECON99 Conf., 1999, pp. 1415-1420. E. Monmasson, J.C. Hapiot, M. Granpierre, A digital control system based on field programmable gate array for AC drives, EPE Journal, vol. 3, n 4, Nov. 1993, pp. 227-234. Y-A. Chapuis, C. Girerd, F. Aubpart, J-P. Blond and F. Braun, Quantization problem analysis on ASIC-based Direct Torque Control of an induction machine, in Proc. IEEE-IECON98 Conf., 1998, pp.1527-1532. H.J. Lee; S.K. Kim; Y.A. Kwon; S.J. Kim, ASIC design for DTC based speed control of induction motor, in Proc. IEEE ISIE01 Conf., 2001, pp. 956 961. S.J. Henriksen, R.E. Betz and B.J. Cook, Digital hardware implementation of a current controller for IM variable-speed drives, IEEE Trans. Ind. Appl., vol. 35, pp.1021-1029, Sept./Oct. 1999. A.A. Jerraya, H. Ding, P. Kission, M. Rahmouni, Behavioral Synthesis and Component Reuse with VHDL. Kluwer Academic Publishers, 1998. T. Riesgo, Y. Torroja, E. De la Torre, Design methodologies based on Hardware Description Languages, IEEE Trans. Ind. Electron., vol. 46, pp. 3-12, Feb. 1999.
Bibliography
207
Questions ?