(Ebook) Technology Mapping For LUT-Based FPGA by Marcin Kubica, Adam Opara, Dariusz Kania ISBN 9783030604875, 9783030604882, 303060487X, 3030604888
(Ebook) Technology Mapping For LUT-Based FPGA by Marcin Kubica, Adam Opara, Dariusz Kania ISBN 9783030604875, 9783030604882, 303060487X, 3030604888
com
OR CLICK HERE
DOWLOAD EBOOK
(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason; Viles, James ISBN
9781459699816, 9781743365571, 9781925268492, 1459699815, 1743365578, 1925268497
https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374
ebooknice.com
(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena Alfredsson, Hans Heikne, Sanna
Bodemyr ISBN 9789127456600, 9127456609
https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312
ebooknice.com
(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT II Success) by Peterson's
ISBN 9780768906677, 0768906679
https://ebooknice.com/product/sat-ii-success-math-1c-and-2c-2002-peterson-s-sat-
ii-success-1722018
ebooknice.com
(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master the SAT Subject Test: Math
Levels 1 & 2) by Arco ISBN 9780768923049, 0768923042
https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-arco-master-
the-sat-subject-test-math-levels-1-2-2326094
ebooknice.com
(Ebook) Cambridge IGCSE and O Level History Workbook 2C - Depth Study: the United
States, 1919-41 2nd Edition by Benjamin Harrison ISBN 9781398375147, 9781398375048,
1398375144, 1398375047
https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044
ebooknice.com
https://ebooknice.com/product/architecture-exploration-of-fpga-based-
accelerators-for-bioinformatics-applications-5486096
ebooknice.com
(Ebook) Digital Technology for Forensic Footwear Analysis and Vertebrate Ichnology
by Matthew R. Bennett, Marcin Budka ISBN 9783319936888, 9783319936895, 3319936883,
3319936891
https://ebooknice.com/product/digital-technology-for-forensic-footwear-analysis-
and-vertebrate-ichnology-7323166
ebooknice.com
https://ebooknice.com/product/microwave-enhanced-polymer-chemistry-and-
technology-1131002
ebooknice.com
https://ebooknice.com/product/local-woman-missing-47597358
ebooknice.com
Lecture Notes in Electrical Engineering 713
Marcin Kubica
Adam Opara
Dariusz Kania
Technology
Mapping
for LUT-Based
FPGA
Lecture Notes in Electrical Engineering
Volume 713
Series Editors
Leopoldo Angrisani, Department of Electrical and Information Technologies Engineering, University of Napoli
Federico II, Naples, Italy
Marco Arteaga, Departament de Control y Robótica, Universidad Nacional Autónoma de México, Coyoacán,
Mexico
Bijaya Ketan Panigrahi, Electrical Engineering, Indian Institute of Technology Delhi, New Delhi, Delhi, India
Samarjit Chakraborty, Fakultät für Elektrotechnik und Informationstechnik, TU München, Munich, Germany
Jiming Chen, Zhejiang University, Hangzhou, Zhejiang, China
Shanben Chen, Materials Science and Engineering, Shanghai Jiao Tong University, Shanghai, China
Tan Kay Chen, Department of Electrical and Computer Engineering, National University of Singapore,
Singapore, Singapore
Rüdiger Dillmann, Humanoids and Intelligent Systems Laboratory, Karlsruhe Institute for Technology,
Karlsruhe, Germany
Haibin Duan, Beijing University of Aeronautics and Astronautics, Beijing, China
Gianluigi Ferrari, Università di Parma, Parma, Italy
Manuel Ferre, Centre for Automation and Robotics CAR (UPM-CSIC), Universidad Politécnica de Madrid,
Madrid, Spain
Sandra Hirche, Department of Electrical Engineering and Information Science, Technische Universität
München, Munich, Germany
Faryar Jabbari, Department of Mechanical and Aerospace Engineering, University of California, Irvine, CA,
USA
Limin Jia, State Key Laboratory of Rail Traffic Control and Safety, Beijing Jiaotong University, Beijing, China
Janusz Kacprzyk, Systems Research Institute, Polish Academy of Sciences, Warsaw, Poland
Alaa Khamis, German University in Egypt El Tagamoa El Khames, New Cairo City, Egypt
Torsten Kroeger, Stanford University, Stanford, CA, USA
Qilian Liang, Department of Electrical Engineering, University of Texas at Arlington, Arlington, TX, USA
Ferran Martín, Departament d’Enginyeria Electrònica, Universitat Autònoma de Barcelona, Bellaterra,
Barcelona, Spain
Tan Cher Ming, College of Engineering, Nanyang Technological University, Singapore, Singapore
Wolfgang Minker, Institute of Information Technology, University of Ulm, Ulm, Germany
Pradeep Misra, Department of Electrical Engineering, Wright State University, Dayton, OH, USA
Sebastian Möller, Quality and Usability Laboratory, TU Berlin, Berlin, Germany
Subhas Mukhopadhyay, School of Engineering & Advanced Technology, Massey University,
Palmerston North, Manawatu-Wanganui, New Zealand
Cun-Zheng Ning, Electrical Engineering, Arizona State University, Tempe, AZ, USA
Toyoaki Nishida, Graduate School of Informatics, Kyoto University, Kyoto, Japan
Federica Pascucci, Dipartimento di Ingegneria, Università degli Studi “Roma Tre”, Rome, Italy
Yong Qin, State Key Laboratory of Rail Traffic Control and Safety, Beijing Jiaotong University, Beijing, China
Gan Woon Seng, School of Electrical & Electronic Engineering, Nanyang Technological University,
Singapore, Singapore
Joachim Speidel, Institute of Telecommunications, Universität Stuttgart, Stuttgart, Germany
Germano Veiga, Campus da FEUP, INESC Porto, Porto, Portugal
Haitao Wu, Academy of Opto-electronics, Chinese Academy of Sciences, Beijing, China
Junjie James Zhang, Charlotte, NC, USA
The book series Lecture Notes in Electrical Engineering (LNEE) publishes the
latest developments in Electrical Engineering - quickly, informally and in high
quality. While original research reported in proceedings and monographs has
traditionally formed the core of LNEE, we also encourage authors to submit books
devoted to supporting student education and professional training in the various
fields and applications areas of electrical engineering. The series cover classical and
emerging topics concerning:
• Communication Engineering, Information Theory and Networks
• Electronics Engineering and Microelectronics
• Signal, Image and Speech Processing
• Wireless and Mobile Communication
• Circuits and Systems
• Energy Systems, Power Electronics and Electrical Machines
• Electro-optical Engineering
• Instrumentation Engineering
• Avionics Engineering
• Control Systems
• Internet-of-Things and Cybersecurity
• Biomedical Devices, MEMS and NEMS
For general information about this book series, comments or suggestions, please
contact [email protected].
To submit a proposal or request further information, please contact the
Publishing Editor in your country:
China
Jasmine Dou, Associate Editor ([email protected])
India, Japan, Rest of Asia
Swati Meherishi, Executive Editor ([email protected])
Southeast Asia, Australia, New Zealand
Ramesh Nath Premnath, Editor ([email protected])
USA, Canada:
Michael Luby, Senior Editor ([email protected])
All other Countries:
Leontina Di Cecco, Senior Editor ([email protected])
** Indexing: Indexed by Scopus. **
Dariusz Kania
Technology Mapping
for LUT-Based FPGA
123
Marcin Kubica Adam Opara
Silesian University of Technology Silesian University of Technology
Gliwice, Poland Gliwice, Poland
Dariusz Kania
Silesian University of Technology
Gliwice, Poland
This Springer imprint is published by the registered company Springer Nature Switzerland AG
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
This book is a summary of the authors’ many years of research in the field of logic
synthesis. These studies concentrated in the areas of function decomposition,
technological mapping or recently cyber-physical systems. These issues were the
subject of two doctoral dissertations: Adam Opara: “Dekompozycyjne metody
syntezy układów kombinacyjnych wykorzystujące binarne diagramy decyzyjne”
(2009) and Marcin Kubica: “Dekompozycja i odwzorowanie technologiczne z
wykorzystaniem binarnych diagramów decyzyjnych” (2014) in Silesian University
of Technology. The ideas underlying these Ph.D. theses have been developed over
the years, which has been the basis of many scientific publications that are refer-
enced in the book.
The motivation for the book was the desire to present comprehensively the
issues that the authors have dealt with in recent years. The book is a presentation of
a number of ideas published in earlier articles, to which the reader is directed and
the appropriate reference materials. This type of approach allows a more complete
presentation of the essence of problems and solutions proposed by the authors,
meticulously presented in the indicated articles. The authors emphasize that this
book is a review, and the original source of ideas presented are the authors’
publications and doctoral dissertations, from which the authors took materials
necessary to create this book.
We would like to thank the reviewers and colleagues for many valuable com-
ments, which were the inspiration for continuous improvement of developed
methods and influenced the final form of this book. We thank wives, daughters and
all relatives for invaluable help and understanding.
v
Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 1
1.1 ASIC Implementation of Digital Circuits . . . . . . . . . . . . . . ... 1
1.2 Influence of Architecture on the Way of Conducting Logic
Synthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Academic Systems of Logic Synthesis Oriented at FPGA . . . . . 6
1.4 System on Chip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2 Methods for Representing Boolean Functions—Basic
Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1 Hypercube, Cube, Implicant, Minterm . . . . . . . . . . . . . . . . . . . 15
2.2 Two-Level Description of a Boolean Function . . . . . . . . . . . . . 18
2.3 Truth Table, Karnaugh Map, Binary Decision Tree . . . . . . . . . . 20
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3 Binary Decision Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . ....... 25
3.1 BDD Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....... 29
3.2 Basics of Software Implementation . . . . . . . . . . . . . . ....... 31
3.2.1 Representation of Diagram Nodes in Computer
Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....... 31
3.2.2 Negation Attribute . . . . . . . . . . . . . . . . . . . . . ....... 33
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....... 35
4 Theoretical Basis of Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1 Functional Decomposition Theorem . . . . . . . . . . . . . . . . . . . . . 39
4.2 Complex Decomposition Models . . . . . . . . . . . . . . . . . . . . . . . 41
4.3 Iterative Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4 Multiple Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.5 Direction of Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
vii
viii Contents
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Chapter 1
Introduction
The design process of digital systems requires the use of specialized computer-aided
design (CAD) software. The diversity of digital circuit implementations and the
domination of application-specific integrated circuits (ASICs) create many problems
in the field of automatic synthesis. Describing the designed systems and converting
description to a form implemented in hardware are challenging. These problems have
contributed to the development of high-level forms of system description, which may
include hardware description languages or even system description languages.
The description of a system at a high level of abstraction, for example, using
hardware description languages (VHDL, VERILOG HDL), renders the process of
compiling various language forms extremely important. A very important issue of
modern logic synthesis is linking the elements of synthesis with the problems of
technology mapping of circuits. Only effective synthesis algorithms, including tech-
nology mapping methods that are well suited to the architecture of circuits, can enable
“good” system design (effectively using the logic resources of the structure).
The intention of the authors of this book is to present various aspects of modern
logic synthesis with a focus on the issues of technology mapping of designed circuits
in Field-Programmable Gate Array (FPGA) structures. The issues of synthesis and
technology mapping are discussed primarily in connection with binary decision
diagrams.
In the group of currently produced integrated digital circuits, a person can distinguish
standard circuits, which are intended for general, universal applications and special-
ized circuits (Application-Specific Integrated Circuits - ASIC) that are designed or
adapted to the individual needs of the user.
Implementations of digital systems based on standard integrated circuits that are
selected from an extensive range of mass-produced components currently do not have
economic justification, even with a small production series. Solutions in the form of
various forms of ASICs are substantially more profitable. Integrated circuits of this
type are manufactured or adapted to the individual needs of the customer. Several
types of circuits can be distinguished in the ASIC circuit group. They differ in the
degree of resource individualization, method of initial preparation of gate matrices
and method of adapting the “semifinished products” to the needs of the recipient.
Four groups of ASICs exist: full custom, standard cells, gate arrays and
programmable logic devices. In the case of full custom circuits, an entire system
is created on a “clean” silicon surface, which renders it profitable only for the largest
production series. Designing circuits in the form of gate arrays and standard cells
requires the use of prepared library elements that are adapted to the applied tech-
nology or semifinished products that contain appropriate matrices of elementary
elements (transistors, and resistors). In each case, an appropriate specification of the
digital system is combined with the selection of library elements. The process of
creating an integrated circuit completes the execution of masks that enable you to
connect the components.
For small production runs, PLDs are utilized (PLD—Programmable Logic
Devices). In this case, the process of adapting a circuit to the user’s needs is achieved
by programming. The development of programmable devices has enabled them to
address a growing area of applications. The key advantage of this form of implementa-
tion of an integrated circuit is its easy modification, which consists of reprogramming
a device. This type of feature predisposes programmable structures to applications
that are aimed at prototyping. In addition, this type of solution does not require the use
of very advanced technology lines, and the entire process of manufacturing a digital
system can occur at the designer’s desk. The constantly increasing complexity of
programmable structures and the increasing availability of software affect the high
attractiveness of this type of solution. A significant advantage of this technology is
the possibility of reprogramming a system in a manufactured and operating digital
system.
Field Programmable Gate Arrays are currently the market-dominating family
of PLDs. They consist of programmable logic cells (blocks) and additional logic
resources for connecting them and exchanging information with the environment.
The most popular FPGAs are LUT-based FPGAs [1, 2] that contain configurable logic
blocks, I/O blocks (IOB) and interconnect areas that are used to make connections.
Configurable logic blocks enable the implementation of each logic function with a
specific and usually small number of variables. The logic structure of these blocks is
similar to the structure of the first programmable read only memory (PROM) types.
Configuration data, which are responsible for the way connections are made inside
a device, are most often contained in RAM memory cells. The simplified structure
of FPGAs is shown in Fig. 1.1. A configurable logic block usually contains LUT
array blocks with few inputs but enable any function. A LUT-type logic block that
contains n-inputs and m-outputs is abbreviated LUTn/m.
In specific solutions, larger structures are created, e.g., referred to as “slice”
cells in Xilinx devices, and in addition to LUT4/1 blocks, they contain additional
programmable multiplexers, programmable connections, and elementary arithmetic
1.1 ASIC Implementation of Digital Circuits 3
FPGA
Interconnect Area
I/O Block
LUT
n/m
blocks. The basic element of these solutions is the LUT block, which works in various
configurations. Sometimes larger structures can be created within a block; however,
the resources of neighboring cells are always utilized, creating significant imple-
mentation restrictions [2]. An example of logic resources available in slice blocks
of Spartan 3 devices enable the creation of LUT blocks with more inputs than the
elementary LUT5/1 block, as shown in Fig. 1.2.
Note that arithmetic elements appear increasingly often in logic blocks of FPGAs
or outside of them. These elements include fast transfer circuits or specialized multi-
pliers. FPGA structures are used to accelerate calculations by hardware implemen-
tation, which explains the emphasis on optimizing arithmetic operations. A conse-
quence of this is embedding in the FPGA structure numerous dedicated modules,
enabling, for example, rapid multiplication and increasing the efficiency of various
types of computational applications.
A characteristic feature of FPGA structures is the segmental nature of the connec-
tions (Fig. 1.3). Each connection point can be modeled as an RC system with delay.
The propagation time introduced by the connection paths depends on the location
of the connected blocks inside the FPGA. In addition, the connection resources in
FPGAs are limited, making the placement of blocks within the structure (placement,
fitting) and the way of routing extremely important. In addition to general purpose
connections, the FPGA has a limited number of long lines—usually vertical and hori-
zontal—which create less delay and are usually employed to distribute time-critical
signals.
4 1 Introduction
LUT5/1
FIXINB
FX
F6
FIXINA
LUT7/1
F5
F5
FIXINB FX
F7
FIXINA
LUT6/1
F5
F5
LUT5/1
FIXINB
F6 FX
FIXINA
F5
F5
t1
t2
The specificity of programmable devices makes the synthesis process different from
the classic synthesis of digital circuits that are implemented using separate elements,
i.e., gates, flip-flops, or larger functional blocks, such as multiplexers and counters.
The synthesis process in programmable structures is reduced to “fitting” the designed
circuit into the programmable structure. The designer’s task is to properly describe
the circuit and verify the results. The synthesis process is usually automatically
performed. Unfortunately, the results are not optimal [11–14].
In the first design stage, the task of the designer is to specify the designed circuit.
Various HDL languages are commonly employed for this purpose. A traditional
circuit description is possible using a schematic editor and library elements that
were created and optimized for the selected programmable structure.
The next stage is the compilation of the description, which is usually integrated
with minimization procedures. The large variety and complexity of programmable
structures means that one of the basic stages of synthesis is to divide a project into
appropriate parts, which are implemented in individual PLDs or logic blocks that
occur in CPLDs and FPGAs. Simple programmable devices (PLA, FPLA) did not
introduce any restrictions related to the possibilities of connections within a structure.
A similar situation applies to CPLDs. The most important stages of the synthesis in
this case are two closely related processes: the process of dividing a project into
appropriate blocks and the selection of appropriate programmable structures (logic
blocks) for their implementation. In the case of simple programmable logic devices
(PAL, PLA), the problem is searching for implementation obtained as a result of a
division of modules on separate circuits [15]. In the case of CPLDs, the division
involves the division of the project into individual logic blocks within a structure. In
6 1 Introduction
most cases, CPLD structures consist of PAL-based logic blocks that contain a certain
number of terms; thus, the synthesis goal is to effectively use them [16–19]. In the
background of an effective technology mapping of the designed system in CPLDs,
an effective use of terms or PAL-based logic blocks that contain the number of terms
characteristic for individual systems families [20].
In FPGAs, an extremely important stage of synthesis is decomposition, which
causes the division of the designed circuit into appropriate configurable logic blocks.
Due to limited connection resources, two problems become critical: placement of
blocks within the structure and routing. The synthesis process always ends with
the creation of a configuration data file that is sent during configuration to the
programmable device.
Since the beginning of the 90s of the last century, many complex synthesis
methods, which are subject to constant modification, have been created due to the
need to adapt them to new structures of programmable devices. The variety of forms
of digital circuit implementation enables the creation of universal design tools that
are dedicated to the entire range of PLDs from various manufacturers. The advan-
tage of these design support systems is their versatility and the associated ability
to transfer projects between different families of programmable devices. The final
stages of technology mapping are performed in a company’s tools, which are devel-
oped by a specific manufacturer of PLDs. Because the target structure is not included
in the initial stage of synthesis, universal tools usually do not ensure the efficient
use of programmable device resources, although recently this rule does not apply.
Unfortunately, portability usually does not correlate with the resource efficiency of
programmable structures.
The second group of design support tools are specialized tools included in the
company’s software packages provided by manufacturers of PLDs. These tools
usually enable a more efficient use of specific properties of structures but can be
used for a limited group of programmable devices, which is a serious disadvantage.
A simplified block diagram of the design process is shown in Fig. 1.4.
Logic synthesis is the subject of many scientific papers. As a rule, the work is limited
to a single stage of synthesis. In the 1980s, the subject of function minimization was
popular and produced algorithms such as Espresso [21]. In the 90s and the beginning
of the twenty-first century, work focused on topics related to function decomposition
and technologic mapping.
The first logic synthesis algorithms dedicated to an LUT-based FPGA were based
on logic synthesis collaborated to gate-based circuits (MIS-PGA [22, 23], ASYL
[24, 25], Chortle [26]). These algorithms used various elements of multilevel opti-
mization, factorization of Boolean expressions, variable partitioning, lexicographical
1.3 Academic Systems of Logic Synthesis Oriented at FPGA 7
Compilation
creating a netlist
?
Technology mapping
mapping
placement, fitting
Post-technology routing
mapping simulation
Creating
configuration data
Simulation
verification
Configuration
ordering of variables, and dynamic programming. LUT mapping steps were often
based on the iterative division of a network of gates. In the initial step, the network of
gates corresponded to a Boolean expression after a two-level minimization. Network
mapping was based on an appropriate choice of nodes [26–30]. The technology
mapping process transforms a technology-independent logic network into a network
of logic nodes. Each logic node was represented by a k-input LUT. State-of-art FPGA
technology mappers, which are based on a division of a logic network, are presented
in [31–33].
Decomposition is a crucial element of a logic synthesis dedicated to an LUT-
based FPGA. Decomposition enables a project to be divided into the parts that have
a given number of inputs, because LUTs enable a function that has a limited number
of variables (4, 5 or 6) to be carried out. Ashenhurst-Curtis theory [25, 34, 35] is
a background for many decomposition algorithms that are oriented to LUT-based
FPGAs. This model of decomposition became the basis of the second group of tech-
nology mapping approaches [26, 36–40]. These algorithms often use graph coloring
techniques [40–44], function transformation [40, 45], and a combination of classic
decomposition with the procedures of outputs’ division. A classic decomposition
model is used in the synthesis process that is oriented to PAL-based CPLD [7, 46,
47]. The main interest, however, is concerned with the methods that use Binary
Decision Diagrams (BDD) [48–59]. Description of logic functions in the form of
BDD may cause substantial limitation of memory usage and makes the operations
8 1 Introduction
run faster. Due to these advantages, synthesis systems such as BDS [60], BDS–PGA
[61], and DDBDD [62] have appeared and produce very efficient solutions that are
similar to a system’s DAOmap [31] or ABC [63], which use AIG graphs. In recent
years, the decomposition process has used resynthesis elements more frequently
[37, 64, 65]. Regarding the synthesis process, the configurability of logic blocks is
considered; the ALMmap tool is an example [66].
In recent years, research on system-oriented synthesis that focuses on System on
Chip has become increasingly popular and is associated with the synthesis of Cyber-
Physical Systems [14, 67, 68], where establishing a clear border between a physical
layer of a system and implemented calculating techniques is difficult. Aspects related
to the synthesis of energy-saving systems are also very important [69–73].
supported by hardware methods of thread switching and selection [100]. The problem
of selection of virtual components, combined with issues of concurrent hardware
and software synthesis and related to the design of these systems by methods of
description (SystemC, SystemVerilog), is the basis for the development of circuits or
programmable systems at the current time. A modern programmable system usually
has the option of partial dynamic reconfiguration. This feature creates completely
new possibilities for using the systems [101, 102] and introduces new problems into
the synthesis process. In this type of programmable structure, for example, you can
implement multicontext systems.
In recent years, the design process has been moved to areas very far from purely
hardware issues. Designers describe systems at increasingly higher levels of abstrac-
tion, indicating that they often do not identify the hardware resources of the imple-
mented system. According to the authors, this approach is not conducive to creating
effective logic synthesis algorithms. This fact has become a motivation for writing this
book. The development of programmable structures has constantly introduced new
synthesis problems. Some of these problems have not been satisfactorily resolved. An
example is the problem of decomposition. Despite the development of various decom-
position methods, an effective method for dividing the designed system into config-
urable logic blocks contained in FPGAs does not exist. Showing circuits that use
substantially fewer logic blocks than solutions obtained using commercial synthesis
tools remains extremely easy [10, 11, 42, 103–108].
This book is an attempt to present a series of original concepts of technology
mapping of digital circuits in FPGAs. The process of technology mapping is closely
related to the process of decomposition of logic functions described by binary
decision diagrams.
References
1. www.altera.com
2. www.xilinx.com
3. www.actel.com
4. Czerwiński R, Kania D (2009) Synthesis of finite state machines for CPLDs. Int J Appl Math
Comput Sci (AMCS) 19(4):647–659
5. Czerwiński R, Kania D (2010) A synthesis of high speed finite state machines. Bull Polish
Acad Sci Tech Sci 58(4):635–644
6. Kania D (2007) A new approach to logic synthesis of multi-output boolean functions on PAL-
based CPLDs. In: Proceedings of the ACM great lakes symposium on VLSI, GLSVLSI’07
Stressa - Lago Maggiore, Italy, March, 11–13, 2007, pp 152–155
7. Kania D, Kubica M (2015) Technology mapping based on modified graph of outputs. In: Inter-
national conference of computational methods in sciences and engineering, AIP Conference
Proceedings, vol 1702
8. Opara A, Kania D (2010) Decomposition-based logic synthesis for PAL-based CPLDs. Int J
Appl Math Comput Sci 20(2):367–384
9. Opara A, Kania D (2015) Logic synthesis strategy based on BDD decomposition and PAL-
oriented optimization. In: 11th international conference of computational methods in sciences
10 1 Introduction
and engineering, ICCMSE 2015, 20–23 March 2015, Athens, Greece, AIP Conf. Proc. 1702,
2015, 060002-1–4
10. Opara A, Kubica M (2016) Decomposition synthesis strategy directed to FPGA with special
MTBDD representation. In: International conference of computational methods in sciences
and engineering, American Institute of Physics, Athens, 17 Mar 2016, AIP conference
proceedings, vol 1790
11. Cong J, Minkovich K (2007) Optimality study of logic synthesis for LUT-based FPGAs. IEEE
Trans CAD 2(2):230–239
12. Kania D (2011) Efficient technology mapping method for PAL-based devices, design of digital
systems and devices, book series. Lecture Notes in Electrical Engineering 79:145–163
13. Kania D (2015) Logic decomposition for PAL-based CPLDs. J Circuits Syst Comput 24(3):1–
27
14. Opara A, Kubica M, Kania D (2019) Methods of improving time efficiency of decomposition
dedicated at FPGA structures and using BDD in the process of cyber-physical synthesis. IEEE
Access 7:20619–20631
15. Bolton M (1990) Digital systems design with programmable logic. Addison-Wesley
Publishing Company, Boston
16. Chen SL, Hwang TT, Liu CL (2002) A technology mapping algorithm for CPLD architectures.
In: IEEE international conference on field-programmable technology, Hong Kong, December
16–18, 2002, pp. 204–210
17. Czerwiński R, Kania D (2013) Finite state machine logic synthesis for CPLDs, Springer,
Lecture Notes in Electrical Engineering, vol 231, XVI, 172 p
18. Kania D (2000) A technology mapping algorithm for PAL-based devices using multi-output
function graphs. In: Proceedings of 26-th Euromicro Conference, IEEE Computer Society
Press, Maastricht, 2000, pp 146–153
19. Kania D (2002) Logic synthesis of multi-output functions for PAL-based CPLDs. In: IEEE
international conference on field-programmable technology, Hong Kong, December 16–18,
pp 429–432
20. Kania D, Kulisz J, Milik A (2005) A novel method of two-stage decomposition dedicated
for PAL-based CPLDs. In: Proceedings of Euromicro symposium on digital system design,
IEEE Computer Society Press, Porto, September, pp 114–121
21. Espresso (1993) A source code. http://embedded.eecs.berkeley.edu/pubs/downloads/esp
resso/index.htm
22. Murgai R, Nishizaki Y, Shenay N, Brayton RK, Sangiovanni-Vincentelli A (1990) Logic
synthesis for programmable gate array. In: Proceedings of 27th DAC, June 1990, pp 620–625
23. Murgai R, Shenoy N, Brayton RK, Sangiovanni-Vincentelli A (1991) Improved logic synthesis
algorithms for table look up architectures. ICCAD-91, Santa Clara, CA, pp 564–567
24. Abouzeid P, Babba B, Crastes M, Saucier G (1993) Input-driven partitioning methods and
application to synthesis on table-lookup-based FPGAs. IEEE Trans on CAD 12(7):913–925
25. Ashenhurst RL (1957) The decomposition of switching functions. In: Proceedings of an
international symposium on the theory of switching, April 1957
26. Brown SD, Francis RJ, Rose J, Vranesic ZG (1993) Field programmable gate arrays. Kluwer
Academic Publishers, Boston, pp 45–86
27. Brayton RK, Hachtel GD, McMullen C, Sangiovanni-Vincentelli AL (1984) Logic minimiza-
tion algorithms for VLSI synthesis. Kluwer Academic Publishers, Boston
28. Brayton RK, Hachtel GD, Sangiovanni-Vincentelli AL (1990) Multilevel logic synthesis. Proc
IEEE 78(2):264–300
29. Cong J, Ding Y (1994) FlowMap: an optimal technology mapping algorithm for delay
optimization in lookup-table based FPGA design. IEEE Trans Comput-Aided Des 13(1):1–12
30. De Micheli G (1994) Synthesis and optimization of digital circuits. McGraw-Hill, Inc.
31. Chen D, Cong J (2004) DAOmap: a depth-optimal area optimization mapping algorithm
for FPGA designs. Computer Aided Design, 2004. IEEE/ACM International Conference on
ICCAD-2004, pp 752–759
References 11
55. Opara A, Kubica M, Kania D (2018) Strategy of logic synthesis using MTBDD dedicated to
FPGA. Integr VLSI J 62:142–158
56. Opara A, Kubica M (2018) The choice of decomposition taking non-disjoint decomposition
into account. In: Proceedings of the international conference of computational methods in
sciences and engineering 2018, American Institute of Physics, Thessaloniki, 14 Mar 2018,
AIP Conference Proceedings, vol 2040, Art. no. 080010
57. Sasao T (1993) FPGA design by generalized functional decomposition in logic synthesis and
optimization. Kluwer Academic Publishers, Boston
58. Scholl A (2001) Functional decomposition with application to FPGA synthesis. Kluwer
Academic Publishers, Boston
59. Zhang H, Chen Z, Wang P (2019) Area and delay optimization of binary decision diagrams
mapped circuit. J Electr Inf Technol 41(3):725–731
60. Yang C, Ciesielski M (2002) BDS: a BDD-based logic optimization system. IEEE Trans
Comput-Aided Des Integ Circuits Syst 21(7):866–876
61. Vemuri N, Kalla P, Tessier R (2002) A BDD—based logic synthesis for LUT—based FPGAs.
ACM Trans Des Autom Electron Devices 7(4):501–525
62. Cheng L, Chen D, Wong MDF (2007) DDBDD: delay-driven BDD synthesis for FPGAs. In:
Design automation conference, 2007, DAC ’07. 44th ACM/IEEE, 2007, pp 910–915
63. Berkeley Logic Synthesis Group (2005) ABC: a system for sequential synthesis and
verification, Dec. 2005. Available: http://www.eecs.berkeley.edu/~alanmi/abc
64. Fiser P, Schmidt J (2009) The case for a balanced decomposition process. In: Proceedings of
12th Euromicro conference on digital systems design (DSD), Patras (Greece), pp 601–604
65. Fiser P, Schmidt J (2012) On using permutation of variables to improve the iterative power
of resynthesis, in Proc. of 10th Int. Workshop on Boolean Problems (IWSBP), Freiberg
(Germany), pp 107–114
66. Liang YY, Kuo TY, Wang SH, Mak WK (2010) ALMmap: technology mapping for
FPGAs with adaptive logic modules, computer-aided design (ICCAD). In: 2010 IEEE/ACM
international conference on, pp 143–148
67. Kubica M, Kania D, Kulisz J (2019) A technology mapping of FSMs based on a graph of
excitations and outputs IEEE Access, vol 7, pp 16123–16131
68. Kubica M, Kania D (2019) Graph of outputs in the process of synthesis directed at CPLDs,
Mathematics 7(12):1–17, Art. no. 1171
69. Kajstura K, Kania D (2011) A decomposition state assignment method of finite state machines
oriented towards minimization of Power. Przegl˛ad Elektrotechniczny 87(6):146–150
70. Kajstura K, Kania D (2016) Binary tree-based low power state assignment algorithm. In: 12-
th international conference of computational methods in science and engineering, ICCMSE
2016, 17–20 March 2016, Athens, Greece, AIP Conference Proceedings 1790, 2016, pp
0300007_1–0300007_4
71. Kajstura K, Kania D (2018) Low power synthesis of finite state machines state assignment
decomposition algorithm. J Circuits Syst Comput 27(3):1850041-1–1850041-14
72. Kubica M, Kajstura K, Kania D (2018) Logic synthesis of low power FSM dedicated into
LUT-based FPGA. In: Proceedings of the international conference of computational methods
in sciences and engineering 2018. American Institute of Physics, Thessaloniki, 14 Mar 2018,
AIP Conference Proceedings, vol 2040
73. Mengibar L, Entrena L, Lorenz MG, Millan ES (2005) Patitioned state encoding for low
Power in FPGAs. Electron Lett 41:948
74. Kobylecki M, Kania D (2017) FPGA implementation of bit controller in double-tick architec-
ture. In: 13-th international conference of computational methods in science and engineering,
ICCMSE 2017, 21–25 April 2017, Thessaloniki, Greece, AIP Conference Proceedings 1906,
pp 120008_1–120008_4
75. Milik A, Hrynkiewicz E (2018) Hardware mapping strategies of PLC programs in FPGAs. In:
15th IFAC conference on programmable devices and embedded systems. PDeS 2018, Ostrava,
Czech Republic, 23–25 May 2018. Amsterdam, Elsevier, 2018, pp 131–137
References 13
76. Mocha J, Kania D (2012) Hardware implementation of a control program in FPGA structures.
Przegl˛ad Elektrotechniczny R.88(12a):95–100
77. Wyrwoł B (2011) Using graph greedy coloring algorithms in the hardware implementation of
the HFIS fuzzy inference system. Przegl˛ad Elektrotechniczny, Warszawa, nr 10, R. 87:64–67
78. Ziebinski A, Bregulla M, Fojcik M, Klak S (2017) Monitoring and controlling speed for
an autonomous mobile platform based on the hall sensor. In: Nguyen NT, Papadopoulos
GA, J˛edrzejowicz P, Trawiński B, Vossen G (eds) Computational collective intelligence: 9th
international conference, ICCCI 2017, Nicosia, Cyprus, 27–29 Sept 2017, Proceedings, Part
II. 2017, pp 249–259
79. Czerwinski R, Rudnicki T (2014) Examination of electromagnetic noises and practical oper-
ations of a PMSM motor driven by a DSP and controlled by means of field oriented control.
Elektronika Ir Elektrotechnika 20(5):46–50
80. Pamula D, Ziebinski A (2009) Hardware implementation of the MD5 algorithm. In: Proceed-
ings of programmable devices and embedded systems conference, Roznov pod Radhostem,
pp 45–50
81. Pułka A, Milik A (2012) Hardware implementation of fuzzy default logic. In: Hippe ZS,
Kulikowski JL (eds) Human-computer systems interaction backgrounds and applications II,
Series: Advances in Intelligent and Soft Computing, vol 99. Springer, Berlin, pp 325–343
82. Rudnicki T, Czerwinski R, Sikora A, Polok D (2016) Impact of PWM control frequency
onto efficiency of a 1 kW Permanent Magnet Synchronous Motor (PMSM). Elektronika Ir
Elektrotechnika 22(6):10–16
83. Pułka A, Milik A (2011) An efficient hardware implementation of smith-waterman algorithm
based on the incremental approach. Int J Electron Telecommun 57(4):489–496
84. Pułka A, Milik A (2012) Measurement aspects of the genome patterns investigations—hard-
ware implementation. Metrol Meas Syst 19(1):49–62
85. Ziebinski A, Swierc S (2016) Soft core processor generated based on the machine code of the
application. J Circuits Syst Comput 25(04):1650029
86. Wyrwoł B, Hrynkiewicz E (2013) Decomposition of the fuzzy inference system for
implementation in the FPGA structure. In: Int J Appl Math Comput Sci 23(2):473–483
87. Wyrwoł B, Hrynkiewicz E (2016) Implementation of a microcontroller-based simplified FITA-
FIS model. Microprocess Microsyst 44:22–27
88. Wyrwoł B (2019) Implementation of the FATI hierarchical fuzzy inference system using the
immutability decomposition method. Fuzzy Sets and Systems. Elsevier, Amsterdam, pp 1–19
89. Grobelna I, Wisniewski R, Grobelny M, Wisniewska M (2017) Design and verification of real-
life processes with application of petri nets. IEEE Trans Syst Man Cybern Syst 47(11):2856–
2869
90. Wisniewski R, Bazydlo G, Gomes L, Costa A (2017) Dynamic partial reconfiguration
of concurrent control systems implemented in FPGA devices. IEEE Trans Industr Inf
13(4):1734–1741
91. Wiśniewski R (2017) Prototyping of concurrent control systems implemented in FPGA
devices. Springer International Publishing, Berlin
92. Wiśniewski R (2018) Dynamic partial reconfiguration of concurrent control systems specified
by petri nets and implemented in Xilinx FPGA devices. IEEE Access 6:32376–32391
93. Sułek W (2016) Non-binary LDPC decoders design for maximizing throughput of an FPGA
implementation. Circuits Syst Signal Process 35:4060–4080
94. Sułek W (2019) Protograph based low-density parity-check codes design with mixed integer
linear programming. IEEE Access 7:1424–1438
95. Cupek R, Pi˛ekoś P, Poczobut M, Ziebinski A (2010) FPGA based “intelligent tap” device for
real-time ethernet network monitoring, computer networks. Proc Ser: Commun Comput Inf
Sci 79:58–66
96. Chmiel M, Czerwinski R, Smolarek P (2015) IEC 61131-3-based PLC Implemented by
means of FPGA. In: 13th IFAC conference on programmable devices and embedded systems,
PDeS’15, 13–15 May 2015, pp 383–388
14 1 Introduction
97. Chmiel M, Kulisz J, Czerwinski R, Krzyzyk A, Rosol M, Smolarek P (2016) An IEC 61131-
3-based PLC implemented by means of an FPGA. Microprocess Microsyst 44:28–37
98. Mazur P, Chmiel M, Czerwinski R (2016) Central processing unit of IEC 61131-3-based PLC.
In: 14th IFAC conference on programmable devices and embedded systems, PDeS’16, 5–7
October 2016, pp 111–116
99. Nawrath R, Czerwiński R (2018) FPGA-based implementation of APB/SPI bridge. In: 14th
international conference of computational methods in sciences and engineering, ICCMSE’18,
Thessaloniki, Greece, 14–18 March 2018
100. Milik A (2018) Multiple-core PLC CPU implementation and programming. J Circuits Syst
Comput 27(10)
101. Milik A (2016) On hardware synthesis and implementation of PLC programs in FPGAs.
Microprocess Microsyst 44:2–16
102. Milik A, Pułka A (2011) Automatic implementation of arithmetic operation in reconfigurable
logic controllers. In: Proceedings of ECCTD 2011 conference, Linköping, Sweden, Aug
27–30, pp 721–724
103. Kubica M, Kania D (2015) SMTBDD: new concept of graph for function decomposition.
IFAC conference on programmable devices and embedded systems: PDeS
104. Kubica M, Kania D, Opara A (2016) Decomposition time effectiveness for various synthesis
strategies dedicated to FPGA structures. In: 12th international conference of computational
methods in science and engineering, ICCMSE 2016, 17–20 March 2016, Athens, Greece,
AIP Conference Proceedings
105. Kubica M, Kania D (2017) Decomposition of multi-output functions oriented to configura-
bility of logic blocks. Bull Polish Acad Sci Tech Sci 65(3):317–331
106. Kubica M, Kania D (2017) Area-oriented technology mapping for LUT-based logic blocks.
Int J Appl Math Comput Sci 27(1):207–222
107. Kubica M, Milik A, Kania D (2018) Technology mapping of multi-output function into LUT-
based FPGA. In: Slanina Z (ed) IFAC conference on programmable devices and embedded
systems: PDeS 2018 Ostrava, Czech Republic, 23–25 May 2018. Elsevier, Amsterdam, 2018,
pp 107–112
108. Kubica M, Kania D (2019) Technology mapping oriented to adaptive logic modules. Bull
Polish Acad Sci—Tech Sci 67(5):947–956
Chapter 2
Methods for Representing Boolean
Functions—Basic Definitions
In the process of logic synthesis, the method of representing Boolean functions has
great importance. The development of synthesis methods is inseparably connected
with the search for new forms of description [1–4]. A “good” description of logic
expressions should be effective in terms of memory usage while ensuring easy
optimization of Boolean expressions that are mapped in modern digital circuits.
This chapter focuses on several basic forms of function representation. These
characters are directly related to the following considerations, which cover various
issues of synthesis and technology mapping. Basic definitions are also presented,
and they enable a precise description of various synthesis issues.
b
0010 0011
0110
0111 b
1010 1011
0000 0001
a 1111
1110
0100
0101 1000 1001
c a
1100
1101
c d
b
0010 0011
0110
0111 b
1010 1011
0000 0001
a 1111
1110
0100
0101 1000 1001
c a
1100
1101
c d
111 111
110 110
a a
100 100
101 101
c c
f0 f1
the symbol 0 in the output part that corresponds to the function f1 of the multioutput
minterm 001 10 does not mean that the function f1 for the cba vector equal to 001
assumes the value 0. The value of this function defines the multioutput implicant -01
01, which does not contain any information about the function f1 (Fig. 2.3).
Understanding the concept of the multioutput implicant and multioutput minterm
enables a proper interpretation of a very popular description of functions in the
Berkeley format used by the program to minimize Espresso [6–8].
One way to describe a Boolean function is the Berkeley format, which is accepted
by the program to minimize Espresso [7, 8]. The function description file consists of
three groups of lines:
• lines that contain comments starting with the character “#”,
• lines that contain keywords that start with the character “.”,
• lines that describe Boolean functions that start with one of the characters “0”, “1”
or “-“.
Keywords determine the way in which each character is interpreted to form a
description of the [9] function. The order in which the keywords appear is strictly
defined. Their minimum set should contain the words “.i” and “.o”, where: i[d] defines
the number of inputs of the function, .o[d] is the number of outputs of the function,
where d represents the corresponding decimal number. Labels can be assigned to
individual inputs and outputs using the following structures: .ilb [s1]… [sn] - assign
symbolic names to all variables of the function; and .ob [s1]… [sn] - assign symbolic
names to all functions, where [si] is the name of the corresponding function input
or output. The description of logic functions is supplemented by two additional
keywords: .p [d] - specifies the number of lines that form the description of the
2.2 Two-Level Description of a Boolean Function 19
function (d—decimal number) and (.e (.end) - end of description marker). Details of
the Espresso format for the function description are provided in [9].
As previously mentioned, the unambiguous description of the function Bn → {0,
1,-}m enables two of three disjoint subsets of Bn spaces to be specified, for which the
function assumes the values of 0, 1 and—are referred to as the On-set, OFF-set and
DC-set, respectively. If the “.type” keyword is not included in the function description
file, the function description should be interpreted to include the description ON-set
and DC-set, and OFF-set, which can be designated as the complement of the sum
of specific sets. This interpretation affects the way characters are interpreted in the
lines that describe the implications of the functions, where the symbol 1 means that
the cube belongs to the ON-set, the symbol - indicates that the cube belongs to the
DC-set, and the symbol 0 should be interpreted that the cube does not belong to the
description of the function.
Thus, each line in the descriptive part of the function Bn → {0,1,-}m consists
of the n element input part, and this part contains the elements {0,1,-} and the m
element output part, which consists of the elements {0,1}. In the case of a description
of the function sets, some n-element input parts can be used to describe at least one
function. The information in the output part, of which the cube does not belong
to the description of the selected function, enables significant compression of the
description. An example of a 3-inputs description and 2-outputs function is presented
in Fig. 2.4.
The extension of the two-level description of a Boolean function is the description
of sequential automata in the form of the KISS format. In this case, in the place of
multioutput implicants, the following lines contain a symbolic description of FSM
transitions, which are sometimes referred to as symbolic implicants. An example of
a symbolic implicant can be the line 011 s1 s2 01, which means that an FSM in the
state s1 at the input vector 011 goes to the state s2 and simultaneously sets the FSM
a) b)
b b
010 011 010 011
.i 3
.o 2
.ilb c b a
111 111 .ob. f0 f1
110 110
.p 3
000 001 000 001 11- 11
--1 10
a a -01 01
.e
100 100
101 101
c c
f0 f1
Fig. 2.4 An example of the description of the function B3 → B2 in the form of hypercube with
marked terms (a) and the corresponding file in the form * .pla (b)
20 2 Methods for Representing Boolean …
outputs 01 on the FSM outputs. Details of the FSM description in KISS format are
provided in the [10].
One of the original forms of describing Boolean functions is the truth table. The
description of a 3-input function using a truth table requires the creation of an
array of 23 rows associated with subsequent combinations of variables and their
corresponding function values, as shown in Fig. 2.5.
Many forms of the description of logic functions, from the point of view of logic
synthesis, do not have any practical significance. Imagine the size of the truth table
that would be used to describe a 16-output combinational system implemented in a
small 100-I/O programmable device. If we wanted to map this table in the computer’s
memory, we would need to use 284 * 16 memory cells. These types of values exceed
the available memory capacities many times.
The development of synthesis methods is inseparably connected with the search
for additional effective ways to describe logic functions [4]. In the initial period of
development of digital technology, the basic problem of synthesis is the minimization
of logic expressions [11]. The classic goal of logic minimization is to reduce expres-
sions that comprise the sum of products. This minimization goal is closely related
to the problem of implementing digital circuits using a gate network. The resulting
network of gates should contain the minimum number of gates that have the smallest
possible number of inputs. This network directly translates to a minimization of
integrated circuits and the number of soldering points, reducing the cost of a printed
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
Discovering Diverse Content Through
Random Scribd Documents
produced by lines and groups of dancers in the sight of a huge
audience all looking at the stage from different angles.
Beaujoyeux’s claim to appeal to and satisfy “l’œil, l’oreille, et
l’entendement” is also interesting, and quite in accord with modern
ideas of the Ballet.
The entertainment itself must have been a remarkable affair. It
began with a fine water display by a fountain with twelve sides, on
each of which were two naiads, with musical instruments, for the
“concert,” which accompanied the singers. Above the fountain-basin,
which was full of fish, rose another on pillars, where twelve niches
made seats for so many nymphs. In the middle, dolphins carried a
crown and formed a throne for the Queen. Two other basins rose
again above, formed of other dolphins grouped, which spouted great
jets of water, and the whole was topped by a golden ball five feet in
diameter.
It was from this “machine,” drawn by sea-horses and accompanied
by twelve tritons and as many sirens with their instruments, that
there descended the Queen, the Princesse de Lorraine, the Duchesses
de Mercueil, de Guise, de Nevers, d’Aumale and de Joyeuse, Marechal
de Raiz, and de l’Archant and the Demoiselles de Pons, de Bourdeille
and de Cypierre—who had all been seated in golden cars, and who
were dressed in silver cloth and crêpe encrusted with gold bullion and
precious stones. Thus they made the first entrance, arranging
themselves in twelve different figures. At the first entrance they were
six abreast and three in front in a triangle, of which the Queen formed
the first point.
After this impressive opening the ballet meandered through the
story of Circe, with musical interludes, songs and dances, and
elaborate allegory. But as the first act began at ten in the evening and
the last did not finish till after five in the morning, it will be seen that
the production was as lengthy as it was magnificent. Some idea of the
splendour of the fête, indeed, may be gathered from the fact that it
cost something over three and a half million francs. The conclusion
was graceful. The Queen and the Princesses, who had represented
naiads and nereids, presented gold medals to the princes and
seigneurs who, in the guise of tritons, had danced with them—
presumably as a reward for their patience! This presentation of gifts
became quite a custom at these courtly ballets, and doubtless the
modern cotillon is a survival.
The “Ballet Comique” set a fashion throughout Europe, and various
Courts vied with each other in similar entertainments. The English
Court had, of course, already had its ceremonial balls, masked balls
and “masques,” but their splendour had been nothing to this, and the
subsequent fêtes at the Courts of Elizabeth and James were directly
influenced by the example of the French in this direction, as we shall
see when we come to deal with the English masque as a form of
Ballet.
Let us first, however, consider the dances of the period, for which
we have an excellent authority in the work of Thoinot Arbeau.
CHAPTER VII
T H O I N OT A R B E AU ’ S “ O R C H É S O G R A P H I E ,” 1 5 8 8
and Sir Toby Belch, it will be recalled, asks: “Why dost thou go to
church in a galliard and come home in a coranto? My very walk should
be a jig ... sink-a-pace.”
There seems, however, considerable ground for question as to what
the courante, or coranto, really was, whether a slow or quick dance.
Arbeau’s directions are, for once, not quite clear. He speaks of it being
a more graceful affair in his younger days; and he was an old man at
the time his Orchésographie was published. In England it certainly
seems to have become a fairly lively dance, of which the main feature
was its “running” steps.
In France that characteristic seems to have been the same though
the tempo may have been slower. Certainly it became slower there,
for the courante under Louis Quatorze was considered a dull dance,
disappearing in favour of newer types requiring a more developed and
quicker technique.
However, dances alter in character, like everything else, in the
course of time. The waltz or valse has considerably altered since it
was first introduced into London drawing-rooms—and considered
shocking!—in the first decade of the nineteenth century; and even to-
day there is considerable difference between the valse as danced by
Swiss or German peasants, and as seen in the London ball-room. It is
probable that the courante of Arbeau’s day was as varied in
performance as the tango of our later time.
Let us return, however, to his description of other dances of the
period. The Allemande, he explains, “est une dance plaine de
mediocre gravité, familiere aux Allemâds, et croy qu’elle soit de noz
plus anciennes car nous sommes desendus des Allemandes.” But his
authority for the latter statement he does not give! It was danced by
two or more people, in twelve time, and later was a very popular
dance with Louis the Thirteenth.
A lengthy description follows of the Branle, which is also sometimes
spelt Bransle, and from which comes our English word Brawl, the
meaning of which has sadly degenerated from its original significance.
Saying that, “since you know how to dance the Pavane and the
Basse-dance, it will be easy for you to dance the branles,” he then
proceeds to give account of over a score, including two which seem
later to have assumed a right to be considered as separate dances,
namely, the Triory de Bretagne (or simply, the Triory) and the Branle
de la Haye, sometimes called merely the Haye, Hay, or Hey, which
was an interlacing chain-dance.
Among the examples he gives is a Branle d’Escosse, of which he
says: “Les branles d’Escosse estoient en vogue y a environ vingt ans,”
and it is much like the customary Scotch reel. The Branles des
Lavandières, he explains, is so-called because the dancers make a
noise by clapping their hands to represent that made by the
washerwomen who wash their clothes on the banks of the Seine.
Another, the Branle du Chandelier, was danced with lighted candles.
A description of the Gavotte follows, and it is interesting to note
that this dance which is still seen on the stage sometimes to-day, was
an established favourite as far back as 1588. Then comes an account
of the “Morisque” dance, the origin of which Arbeau places in the
Saturnalia of the ancient world, not without reason, one fancies; and
then he gives account of the Canaries, which, he says, some say takes
its name from the Canary Isles, while others derive it “from a ballet
composed for a masquerade in which the dancers were dressed as
kings and queens of Mauretania, or even as savages therefrom, with
headdress of varied plumage.” The last chapter is devoted to the
dance of Bouffons, a dance with sword and buckler supposedly
derived from ancient Rome and a never-failing source of delight to
French playgoers and opera-lovers of the sixteenth and seventeenth
centuries.
Before the “Dialogue” actually closes, young Capriol politely thanks
Monsieur Arbeau for the trouble he has taken to teach him dancing,
and Arbeau responds by promising a second volume (alas! never
written) dealing with the ballets of the masquerades “made” at
Lengres. He urges him meanwhile to practise “les dances
honnestement,” and so become a worthy comrade of the planets “qui
dancent naturellement”: and he closes his discourse very prettily with
the words, “Je prie Dieu vous en donne la grace.”
We have lingered somewhat over this old manual of dancing, but
there are some half-dozen points in the history of ballet that it is of
vital importance to emphasise, and Arbeau’s book is one of them.
Dancing itself of course had continued to exist through all time. But
from the decadence of Rome until fairly late in the fifteenth century,
ballet had only a precarious sporadic existence; and the production of
Beaujoyeux’s volume of the Ballet Comique de la Royne in 1582, and
Arbeau’s Orchésographie in 1588, made a turning-point in the history
of ballet—the point where a popular amusement was once again
taken up by men of intellect and given a new form and a new spirit.
Beaujoyeux created an interest in ballet, Arbeau assisted an advance
in the technique of one of the chief elements of the art, namely,
dancing; and there can be little doubt that both men were largely
instrumental in forwarding that movement towards popular delight in
the theatrical masque and ballet which were to become an
outstanding feature of the next two centuries, the seventeenth and
the eighteenth.
CHAPTER VIII
S C E N I C E F F E C T: T H E E N G L I S H M AS Q U E AS B A L L E T
“On the top of all the throne (as being made out of all these)
stood Harmonia, a personage whose dressing had something of all
the others, and had her robe painted full of figures. Her head was
compassed with a crown of gold, having in it seven jewels equally
set. In her hand a lyra, whereon she rested.
“This was the ornament of the throne. The ascent to which,
consisting of six steps, was covered with a multitude of Cupids
(chosen out of the best and most ingenious youth in the kingdom,
noble and others) that were torch-bearers; and all armed with
bows, quivers, wings, and other ensigns of love. On the sides of the
throne were curious and elegant arbours appointed; and behind, in
the back part of the isle, a grove of grown trees laden with golden
fruit, which other little Cupids plucked, and threw at each other,
whilst on the ground, leverets picked up the bruised apples and left
them half eaten. The ground-plat of the whole was a subtle
indented maze; and in the two foremost angles were two fountains
that ran continually, the one Hebe’s and the other Hedone’s; in the
arbours were placed the musicians, who represented the shades of
the old poets, and were attired in a priest-like habit of crimson and
purple, with laurel garlands.
“The colours of the masques were varied; the one half in orange
tawny and silver; the other in sea-green and silver. The bodies of
short skirts on white and gold to both.
“The habit and dressing for the fashion was most curious, and so
exceeding in riches, as the throne whereon they lay seemed to be a
mine of light, struck from their jewels and their garments.
“This throne, as the whole island moved forward on the water,
had a circular motion of its own, imitating that which we call motum
mundi, from the east to the west, or the right to the left side.... The
steps whereon the Cupids sat had a motion contrary, with analogy
ad motum planetarum, from the west to the east; both which
turned with their several lights. And with these three varied
motions, at once, the whole scene shot itself to the land.”
“With which the Winds departed; and the river received them into
the land, by couples and fours, their Cupids coming before them.
“These dancing forth a most curious dance, full of excellent
device and change, ended it in the figure of a diamond, and so,
standing still, were by the musicians with a second Song, sung by a
loud tenor, celebrated.
“The song ended; they danced forth their second dance, more
subtle and full of change than the former; and so exquisitely
performed, as the king’s majesty (incited first by his own liking to
that which all others there present wished) required them both
again after some time of dancing with the lords. Which time, to give
them respite, was intermitted with a song.
“This song was followed by others.
“After which songs they danced galliards and corantos; and with
those excellent graces, that the music appointed to celebrate them,
showed it could be silent no longer; but, by the first tenor, admired
them thus:
“SONG.
“Here they danced a third most elegant and curious dance, and
not to be described again by any art but that of their own footing,
which ending in the figure that was to produce the fourth, January
from his state saluted them thus:
“Janu. Your Grace is great, as is your Beauty, dames;
Enough my feasts have proved your thankful flames
Now use your seat; that seat which was, before,
Though straying, uncertain, floating to each shore,
And to whose having every clime laid claim,
Each land and nation urgéd as the aim
Of their ambition, Beauty’s perfect throne,
Now made peculiar to this place alone;
And that by impulsion of your destinies,
And his attractive beams that lights these skies;
Who, though with ocean compassed, never wets
His hair therein, nor wears a beam that sets.
Long may his light adorn these happy rites,
As I renew them; and your gracious sights
Enjoy that happiness, even to envy, as when
Beauty, at large, brake forth and conquered men!
“At which they danced their last dance into their throne again.”
I the masque was a kind of ballet that did not move from its
f
appointed place within sight of the Royal and Courtly audience, by
whom it was commanded as a spectacle for private entertainment,
there was a “ballet” which did, and became, like the “carrousels” and
“triumphs,” a very public spectacle, namely the ballet-ambulatoire, or
peripatetic “ballet,” said to have originated among the Portuguese,
and much encouraged by the Church.
The Beatification of Ignatius Loyola in 1609 is an instance of
peripatetic “ballet” famous in the history of the dance.
Interesting account of it is given by the invaluable Menestrier, who
writes:
“As the Jesuits had a war-like character, they chose the Siege of
Troy for the subject of their ballet. The first act took place before the
church of Notre Dame de Lorette. It was there they stood the wooden
horse. Full of Jesuits, the machine began to move, while numerous
dancers acted the most remarkable feats of arms of Achilles, Ajax,
Hector and Æneas. The monstrous horse and its retinue advanced,
preceded by a brilliant orchestra. They arrived at the Place St. Roch,
where the Jesuits had their church. The city of Troy, or at least a part
of its towers and ramparts, constructed of wood, occupied a third of
this place. A piece of wall was broken down, to give entrance to the
horse, the Greeks descended from the machine and the Trojans
attacked them with guns. The enemy defended with the same arms,
and the two sides fought—while dancing! Eighteen great staves filled
with fireworks caused the burning and the ruin of Troy!”
One might be puzzled to know how the author of such a drama
would introduce Saint Ignatius Loyola on the scene. The maker of the
“book,” however, had no qualms, and, leaving the Greeks and Trojans
buried beneath the ruins of Ilium, on the following day, he led the
spectators to the seashore. “Four brigantines,” the chronicler
proceeds, “richly decorated and fenced, painted and gilded, covered
with dancers and ‘choirs of music,’ present themselves at the Port.
They bring four ambassadors, who, in the name of the four quarters
of the globe, come to swear homage and fidelity, to offer presents to
the newly beatified, to thank him for his benefits and to beg his
protection for the future. All the artillery of the Forts and of the
vessels salute the brigantines on their entrance. The ambassadors
then mount the cars in waiting and advance towards the College of
the reverend fathers, with an escort of three hundred Jesuits on
horseback, dressed as Greeks! Four troops of inhabitants of the four
quarters of the world, dressed in national costumes, dance round the
cars. The realms, the provinces, represented by their genii loci, march
before their ambassador. The troop from America is the first, and
among the dancers are many children disguised as monkeys and
parrots, and twelve dwarfs, mounted on little nags. The car of Asia is
drawn by two elephants. Six superb horses form the team of the
others.” The diversity, the richness of the costumes was not the least
ornament of this singular ballet, for it is said that several of the actors
had on their garments precious stones of great value.
It is the Portuguese who claim to have invented the true
ambulatory ballets, which—designed in imitation of the Thyrennian
“pomp” described by Appius Alexander—were danced in the streets of
a town proceeding from place to place, with movable stages and
properties. The performances were given on saints’ days and with the
greatest solemnity.
In the year 1610 Pope Paul V. canonised Cardinal St. Charles
Borromée, who, under the pontificate of Pius IV., his uncle, was
patron of the kingdom of Portugal, and that grateful nation wished to
honour him publicly.
In order that it should be done with the greater solemnity, they put
his image on board a ship, as if he were coming back once more to
assume the protection of the kingdom of Portugal.
“A richly decorated vessel with flying sails of divers colours and silk
cordage of magnificent hues, carried the image of the saint under a
canopy of gold brocade. On its appearance in the roads all the vessels
in port, superbly arrayed, advanced to meet it, and rendering military
honours, brought it back with great pomp, and a salute from the guns
of Lisbon and all the vessels in Port. The reliquaries of the patron
Saints of Portugal, carried by the nobles of state and followed by the
religious, civil and military bodies, received the new Saint on
disembarcation.”
As soon as the image was landed, it was received by all the monks
and the whole of the ecclesiastical body, who went to meet it in
procession with four large chariots containing different tableaux. The
first car represented Fame, the second the town of Milan, the third
Portugal, and the fourth the Church. Besides the chariots, each
company of monks and each Brotherhood carried its own particular
Saint on rich litters, called by the Portuguese “andarillas.” The image
of St. Charles was ornamented with precious stones to the value of
twenty-six to twenty-seven thousand crowns; several others to the
value of sixty, seventy and eighty thousand crowns, and the jewels
that were displayed at this fête were estimated at more than four
millions.
Between each chariot were troops of dancers, who represented, in
dancing, the more notable of the acts of the Saints. Octavio
Accoromboni, Bishop of Fossombrone, who obtained these honours
for St. Charles, was at this time in the town of Lisbon, where he had
gone to collect certain monies that Portugal was giving to the Pope.
He has left us a description of this fête, in which he remarks that “the
Italians and more especially the Romans, should not be surprised to
read that dances and ballets formed a part of so sacred a ceremony,
because in Portugal processions and fêtes would not seem elevated
nor serious enough unless accompanied by these manifestations of
joy.”
In order to prepare for these fêtes, dances, ballets and processions,
the Lisbon folk had decorated, several days beforehand, big masts
erected at the doors of the churches where the service was to be
held, and at different places on the roads where the processions and
performances would pass. “These masts were of pine, gilded and
decked with crowns, streamers and banners of different colours,
similar to the masts put up in France at the doors of the magistrates’
houses on the first of May in several towns of the kingdom, a custom
which has given to these masts the name of ‘Maypole.’ The Spaniards
call them ‘Mayos,’ or ‘Arboles de Enamorados’ (Lovers’ trees) because
young men plant them on the first of May at the door of their
mistresses’ houses.” The procession passed through triumphant
arches, and the streets were hung with tapestries and strewn with
flowers.
Three masts were planted at the places of the actual performance,
one at the spot at the port where the procession was to start after the
landing of the image of St. Charles, another in the middle of the
route, and the third at the door of the church where the procession
was to end, and where the image of the saint was to be placed.
These masts marked the places for the performances, for it was there
the procession stopped, and the dancers made their chief entrances in
the “ballet.” Needless to say immense sums were spent on the fête.
These are but two instances of the ballet-ambulatoire. More might
be given, but these will suffice to afford some idea of a type of
spectacle which the older historians speak of as a “ballet,” but which
is of special interest to us by reason of the contrast it forms to the
masque, which was the reverse of “ambulatory,” and from the fact
that though in direct contrast on another score, namely, that it was
not a private but a public spectacle, it was under the “immediate
patronage” of the Church!
Neither the masque nor the ballet-ambulatoire, was yet a theatrical
entertainment; but it is curious, is it not, to note that they had a
certain kinship with theatrical tradition, for these magnificent
peripatetic “ballets” of the ecclesiastics had had a primitive forerunner
in the performance of Thespis with his travelling car in Grecian towns
and villages some six centuries before the Christian era! Even as,
later, we in fourteenth-century England had our Mystery and Miracle
plays travelling from “station” to “station” in similar fashion, and our
“mummers” or mimers; while, on the other hand, the masque itself,
as a private entertainment of the English Court, with its stage, and
“machines,” scenery, dancing, music and song, not to mention its
Royal and Courtly audience, was forerunner of similar entertainments
which a century later were to become the features of the Courts of
Louis XIV and XV, and from that to develop under Royal Patronage
into the Ballet of the Theatre.
CHAPTER X
C O U RT B A L L E TS A B R O A D : 1 6 0 9 - 1 6 5 0
W hile the English Court was enjoying its masques, during the reigns
of Henry VIII, Elizabeth and James, and the French were
labouring forth their heroic ballets under Henri Quatre—more than
eighty having been given from 1589 to 1610, without counting
insignificant balls and masquerades—Italy was similarly keeping up in
the movement which her example had originally inspired.
It was the custom there to celebrate the birthday of the Princess by
an annual public fête. As one old historian records, the more usual
spectacles of these celebrations were in the form of “Carrousels,
Tournois, des Comedies, des Actions en Musique, des Festins, des
Feux d’Artifice, des Mascarades quand ces Fêtes se trouvent au temps
du Carnaval, des Presens, des Illuminations, des Chasses, des Courses
sur la Neige et sur la Glace suivant la saison, des Promenades et des
Jeux sur les Eaux.”
The Court of Savoy was particularly devoted to such
entertainments.
In 1609 there was a ballet d’armes, entitled, “Il Sol nascente nell’
oscurità dell Tile,” danced by the “Serene” Princes of Savoy, the
occasion being the anniversary of the birth of their Royal father, the
Duke Charles Emannuel.
Again, in 1611, the Prince of Piedmont gave a fête in honour to his
father’s birthday, representing “The Taking of the Isle of Cyprus.”
Stage Effect in the 17th Century
(From a coloured engraving of a scene from “Circe,” 1694).
In the year 1615 was produced a mounted ballet at this same Court
(Savoy) for the arrival of the Prince d’Urbin. This was an attack and a
combat to music against three hundred men on foot, who formed
different companies of various shapes, lunated, oval, square and
triangular. They had drilled their horses so well that they were never
out of step with the rhythm of the music. There were numerous cars
drawn by lions, stags, elephants, rhinoceroses, etc., and as they
represented the triumph of Love over War, the Four Quarters of the
World followed the cars of the victors mounted in as many chariots.
The Car of Europe was drawn by horses, that of Africa by elephants,
that of Asia by camels, that of America by “unicorns”! The cars of this
festival had engraved work on them by Callot.
In 1618, “The Elements,” a grand ballet and tourney was
represented by the Duke of Savoy and his son, the Prince of
Piedmont, on the former’s birthday.
“The Temples of Peace and War on Mount Parnassus,” a ballet and
tourney “avec un Festin à la Chinoise,” formed the entertainment of
the following year.
“The Judgment of Flora on the Dispute of the Nymphs over the
Crown of Flowers presented to Mme. Royale on her Birthday,” is the
long and stately title of a fête given at Turin in 1620.
“The Tribute of the Divinities of the Sky, Air, Sea and Infernal
regions,” was a grand ballet and tourney of 1621. “The Ballet of the
Seven Kings of China” was another.
“The Joy of Heaven and Earth,” a fête in honour of the Duke’s
birthday in 1624, was followed by “Bacchus triomphant des Indes,
avec une Action en Musique et une Chasse Pastorale,” in the same
year. This was a fête in honour of the Duke Charles Emmanuel’s
birthday, and was performed by the pages of the Prince Cardinal
Maurice of Savoy, at Rome on January 22nd, 1624.
“Mount Parnassus and the Muses,” “The Quarrel of the Defenders
and the Enemies of the Muses,” took place in February, 1624.
“Cadmus, victorieux du Serpent,” and “Prometheus” were notable
ballets in 1627.
One of the most remarkable, and, according to contemporaries,
beautiful mounted ballets ever composed was that of “Æolus, King of
the Winds,” which Alfonso Ruggieri Sansoverino presented at the
wedding of the Prince of Tuscany in the year 1628 in the St. Croix
Square, in Florence. On one of the sides of this square was a large
reef with a cave hollowed out of its rock and closed by a great door
secured with padlocks.
Don Anthony de Medici, who took the part of master of the combat,
having reconnoitred the course, Æolus, King of the Winds, entered,
accompanied by twelve watermen to whom he “had taught the use of
sails and the nature of the winds.” Twelve Tritons walked before him
blowing their trumpets. Eight Sirens replied on other instruments,
accompanied by Hoar-frost. Eight pages represented the many effects
of the Winds, causing cold, hot, damp, dry, clear, dull, serene or
cloudy weather.
The two sponsors walked behind their pages. The chariot of the
Ocean followed, drawn by two big whales. It represented a rock
covered with seaweed, coral and different kinds of shells. Nymphs of
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebooknice.com