163 research outputs found
Timing Architecture for ESS
Programa Oficial de Doutoramento en Investigación en Tecnoloxías da Información. 5023V01[Resumo]
O sistema de temporización é unha compoñente fundamental para o control e sincronización de
instalacións industriais e científicas, coma aceleradores de partículas. Nesta tese
traballamos na especificación e desenvolvemento do sistema de temporización para a European
Spallation Source (ESS), a maior fonte de neutróns actualmente en construción. Abordamos
este tra ballo a dous niveis: a especificación do sistema de temporización, e a imple mentación
física de sistemas de control empregando circuítos reconfigurables.
Con respecto á especificación do sistema de temporización, deseñamos e implementamos a
configuración do protocolo de temporización para cumprir cos requirimentos do ESS e ideamos un modo
de operación e unha aplicación para a configuración e control do sistema de temporización.
Tamén presentamos unha ferramenta e unha metodoloxía para imple mentar sistemas de
control empregando FPGAs, coma os nodos do sistema de temporización. ámbalas <lúas están baseadas
en statecharts, unha repre sentación gráfica de sistemas que expande o concepto de máquinas de
estados finitos, orientada a sistemas que necesitan ser reconfigurados rápidamente en múltiples
localizacións minimizando a posibilidade de erros. A ferramenta crea automaticamente código
VHDL sintetizable a partir do statechart do sistema. A metodoloxía explica o procedemento
para implementar o state chart como unha arquitectura microprogramada en FPGAs.[Resumen]
El sistema de temporización es un componente fundamental para el control y sincronización de
instalaciones industriales y científicas, como aceleradores e partículas. En esta tesis
trabajamos en la especificación y desarrollo el sistema de temporización para la European
Spallation Source (ESS), la mayor fuente de neutrones actualmente en construcción.
Abordamos este trabajo en dos niveles: la especificación del sistema de temporización, y la
mplementación física de sistemas de control empleando circuitos reconfig rables.
Con respecto a la especificación del sistema de temporización, diseñamos
e implementamos la configuración del protocolo de temporización para cumplir on los requisitos de
ESS e ideamos un modo de operación y una aplicación ara la configuración y control del sistema
de temporización.
También presentamos una herramienta y una metodología para imple entar sistemas de control
empleando FPGAs, como los nodos del sistema e temporización. Ambas están basadas en statecharts)
una representación gráfica de sistemas que expande el concepto de máquinas de estados
fini os, orientada a sistemas que necesitan ser reconfigurados rápidamente en últiples
localizaciones minimizando la posibilidad de errores. La herramienta crea
automáticamente código VHDL sintetizable a partir del statechart del sistema. La metodología
explica el procedimiento para implementar el statechart como una arquitectura microprogramada en FPGAs.[Abstract]
The timing system is a key component for the control and synchronization of industrial and
scientific facilities, such as particle accelerators. In this thesis we tackle the
specification and development of the timing system for the European Spallation Source (ESS), the
largest neutron source currently in construction. We approach this work at two levels:
the specification of the timing system and the physical implementation of control systems using
reconfigurable hardware.
Regarding the specification of the timing system, we designed and imple mented the configuration
of the timing protocol to fulfil the requirements of ESS and devised an operation mode andan
application for the configuration and control of the timing system.
We also present one too! and one methodology to implement control systems using FPGAs,
such as the nodes of the timing system. Both are based on statecharts, a graphical
representation of systems that expand the concepts of Finite State Machines, targeted at
systems that need to be re configured quickly in multiple locations minimizing the
chance of errors. The too! automatically creates synthesizable VHDL code from a statechart of
the system. The methodology explains the procedure to implement the statechart as a
microprogrammed architecture in FPGAs
SdrLift: A Domain-Specific Intermediate Hardware Synthesis Framework for Prototyping Software-Defined Radios
Modern design of Software-Defined Radio (SDR) applications is based on Field Programmable Gate Arrays (FPGA) due to their ability to be configured into solution architectures that are well suited to domain-specific problems while achieving the best trade-off between performance, power, area, and flexibility. FPGAs are well known for rich computational resources, which traditionally include logic, register, and routing resources. The increased technological advances have seen FPGAs incorporating more complex components that comprise sophisticated memory blocks, Digital Signal Processing (DSP) blocks, and high-speed interfacing to Gigabit Ethernet (GbE) and Peripheral Component Interconnect Express (PCIe) bus. Gateware for programming FPGAs is described at a lowlevel of design abstraction using Register Transfer Language (RTL), typically using either VHSIC-HDL (VHDL) or Verilog code. In practice, the low-level description languages have a very steep learning curve, provide low productivity for hardware designers and lack readily available open-source library support for fundamental designs, and consequently limit the design to only hardware experts. These limitations have led to the adoption of High-Level Synthesis (HLS) tools that raise design abstraction using syntax, semantics, and software development notations that are well-known to most software developers. However, while HLS has made programming of FPGAs more accessible and can increase the productivity of design, they are still not widely adopted in the design community due to the low-level skills that are still required to produce efficient designs. Additionally, the resultant RTL code from HLS tools is often difficult to decipher, modify and optimize due to the functionality and micro-architecture that are coupled together in a single High-Level Language (HLL). In order to alleviate these problems, Domain-Specific Languages (DSL) have been introduced to capture algorithms at a high level of abstraction with more expressive power and providing domain-specific optimizations that factor in new transformations and the trade-off between resource utilization and system performance. The problem of existing DSLs is that they are designed around imperative languages with an instruction sequence that does not match the hardware structure and intrinsics, leading to hardware designs with system properties that are unconformable to the high-level specifications and constraints. The aim of this thesis is, therefore, to design and implement an intermediatelevel framework namely SdrLift for use in high-level rapid prototyping of SDR applications that are based on an FPGA. The SdrLift input is a HLL developed using functional language constructs and design patterns that specify the structural behavior of the application design. The functionality of the SdrLift language is two-fold, first, it can be used directly by a designer to develop the SDR applications, secondly, it can be used as the Intermediate Representation (IR) step that is generated by a higher-level language or a DSL. The SdrLift compiler uses the dataflow graph as an IR to structurally represent the accelerator micro-architecture in which the components correspond to the fine-level and coarse-level Hardware blocks (HW Block) which are either auto-synthesized or integrated from existing reusable Intellectual Property (IP) core libraries. Another IR is in the form of a dataflow model and it is used for composition and global interconnection of the HW Blocks while making efficient interfacing decisions in an attempt to satisfy speed and resource usage objectives. Moreover, the dataflow model provides rules and properties that will be used to provide a theoretical framework that formally analyzes the characteristics of SDR applications (i.e. the throughput, sample rate, latency, and buffer size among other factors). Using both the directed graph flow (DFG) and the dataflow model in the SdrLift compiler provides two benefits: an abstraction of the microarchitecture from the high-level algorithm specifications and also decoupling of the microarchitecture from the low-level RTL implementation. Following the IR creation and model analyses is the VHDL code generation which employs the low-level optimizations that ensure optimal hardware design results. The code generation process per forms analysis to ensure the resultant hardware system conforms to the high-level design specifications and constraints. SdrLift is evaluated by developing representative SDR case studies, in which the VHDL code for eight different SDR applications is generated. The experimental results show that SdrLift achieves the desired performance and flexibility, while also conserving the hardware resources utilized
Automatic generation of hardware/software interfaces
Enabling new applications for mobile devices often requires the use of specialized hardware to reduce power consumption. Because of time-to-market pressure, current design methodologies for embedded applications require an early partitioning of the design, allowing the hardware and software to be developed simultaneously, each adhering to a rigid interface contract. This approach is problematic for two reasons: (1) a detailed hardware-software interface is difficult to specify until one is deep into the design process, and (2) it prevents the later migration of functionality across the interface motivated by efficiency concerns or the addition of features. We address this problem using the Bluespec Codesign Language~(BCL) which permits the designer to specify the hardware-software partition in the source code, allowing the compiler to synthesize efficient software and hardware along with transactors for communication between the partitions. The movement of functionality across the hardware-software boundary is accomplished by simply specifying a new partitioning, and since the compiler automatically generates the desired interface specifications, it eliminates yet another error-prone design task. In this paper we present BCL, an extension of a commercially available hardware design language (Bluespec SystemVerilog), a new software compiling scheme, and preliminary results generated using our compiler for various hardware-software decompositions of an Ogg Vorbis audio decoder, and a ray-tracing application.National Science Foundation (U.S.) (NSF (#CCF-0541164))National Research Foundation of Korea (grant from the Korean Government (MEST) (#R33-10095)
Embedded System Design
A unique feature of this open access textbook is to provide a comprehensive introduction to the fundamental knowledge in embedded systems, with applications in cyber-physical systems and the Internet of things. It starts with an introduction to the field and a survey of specification models and languages for embedded and cyber-physical systems. It provides a brief overview of hardware devices used for such systems and presents the essentials of system software for embedded systems, including real-time operating systems. The author also discusses evaluation and validation techniques for embedded systems and provides an overview of techniques for mapping applications to execution platforms, including multi-core platforms. Embedded systems have to operate under tight constraints and, hence, the book also contains a selected set of optimization techniques, including software optimization techniques. The book closes with a brief survey on testing. This fourth edition has been updated and revised to reflect new trends and technologies, such as the importance of cyber-physical systems (CPS) and the Internet of things (IoT), the evolution of single-core processors to multi-core processors, and the increased importance of energy efficiency and thermal issues
Rapid Industrial Prototyping and SoC Design of 3G/4G Wireless Systems Using an HLS Methodology
Many very-high-complexity signal processing algorithms are required in future wireless systems, giving tremendous challenges to real-time implementations. In this paper, we present our industrial rapid prototyping experiences on 3G/4G wireless systems using advanced signal processing algorithms in MIMO-CDMA and MIMO-OFDM systems. Core system design issues are studied and advanced receiver algorithms suitable for implementation are proposed for synchronization, MIMO equalization, and detection. We then present VLSI-oriented complexity reduction schemes and demonstrate how to interact these high-complexity algorithms
with an HLS-based methodology for extensive design space exploration. This is achieved by abstracting the main effort from hardware iterations to the algorithmic C/C++ fixed-point design. We also analyze the advantages and limitations of the methodology. Our industrial design experience demonstrates that it is possible to enable an extensive architectural analysis in a short-time frame using HLS methodology, which significantly shortens the time to market for wireless systems.National Science Foundatio
FPGA-based High Throughput Regular Expression Pattern Matching for Network Intrusion Detection Systems
Network speeds and bandwidths have improved over time. However, the frequency of network attacks and illegal accesses have also increased as the network speeds and bandwidths improved over time. Such attacks are capable of compromising the privacy and confidentiality of network resources belonging to even the most secure networks. Currently, general-purpose processor based software solutions used for detecting network attacks have become inadequate in coping with the current network speeds. Hardware-based platforms are designed to cope with the rising network speeds measured in several gigabits per seconds (Gbps). Such hardware-based platforms are capable of detecting several attacks at once, and a good candidate is the Field-programmable Gate Array (FPGA). The FPGA is a hardware platform that can be used to perform deep packet inspection of network packet contents at high speed. As such, this thesis focused on studying designs that were implemented with Field-programmable Gate Arrays (FPGAs). Furthermore, all the FPGA-based designs studied in this thesis have attempted to sustain a more steady growth in throughput and throughput efficiency. Throughput efficiency is defined as the concurrent throughput of a regular expression matching engine circuit divided by the average number of look up tables (LUTs) utilised by each state of the engine"s automata. The implemented FPGA-based design was built upon the concept of equivalence classification. The concept helped to reduce the overall table size of the inputs needed to drive the various Nondeterministic Finite Automata (NFA) matching engines. Compared with other approaches, the design sustained a throughput of up to 11.48 Gbps, and recorded an overall reduction in the number of pattern matching engines required by up to 75%. Also, the overall memory required by the design was reduced by about 90% when synthesised on the target FPGA platform
A Configurable Crystals-Kyber Hardware Implementation with Side-Channel Protection
In this work, we present a configurable and side channel resistant implementation of the post-quantum key-exchange algorithm Crystals-Kyber. The implemented design can be configured for different performance and area requirements leading to different trade-offs for different applications. A low area implementation can be achieved in 5269 LUTs and 2422 FFs, whereas a high performance implementation required 7151 LUTs and 3730 FFs. Due to a deeply pipelined architecture, a high operating speed of more than 250 MHz could be achieved on 28nm Xilinx FPGAs. The side channel resistance is implemented using a carefully chosen set of techniques resulting in a low overhead of less than 5%. To the best of our knowledge, this work presents the first side-channel attack protected configurable accelerator for Crystals-Kyber. Furthermore, one of the configuration choices results in the smallest hardware implementation of Crystals-Kyber known in literature
Synthesis and simulation of reprogrammable control units from hierarchical specifications
Doutoramento em Engenharia ElectrotécnicaAs máquinas finitas de estados (FSM) têm sido usadas para especificar e
implementar unidades de controlo e têm sido um assunto de grande importância
nas últimas cinco décadas. Devido ao aumento da complexidade das unidades de
controlo e uma vez que o modelo FSM não permite descrições hierárquicas e
concorrentes, novos modelos formais que suportam hierarquia e concorrência têm
sido propostos com o objectivo de ultrapassar as limitações do modelo FSM e que
permitem a especificação de unidades de controlo complexas usando uma
metodologia de decomposição hierarquizada. Apesar disso não têm sido propostas
arquitecturas de máquinas finitas de estados hierárquicas, com excepção das
máquinas construídas com memória stack, que possam ser vistas como uma
máquina integral que implementa internamente e de forma eficiente a transição
entre os diferentes níveis hierárquicos da máquina.
Esta tese aborda a síntese de máquinas de estados especificadas hierarquicamente
e propõe duas arquitecturas de máquinas hierárquicas (HFSM) e uma máquina
paralela hierárquica (PHFSM) contruídas com memória stack, que são flexíveis,
extensíveis e reutilizáveis. Apresenta também, a metodologia de síntese lógica que
permite construir a tabela de transição de estados a partir da especificação
hierárquica, tabela essa que é utilizada na implementação dos modelos propostos.
Considerando que é altamente recomendável a utilização de modelos formais que
permitam descrições hierárquicas e concorrentes na especificação de unidades de
controlo complexas, os modelos de grafos hierárquicos (HGS) e grafos paralelos
hierárquicos (PHGS) são apresentados e são feitas algumas considerações acerca
da sua utilização, execução e correcção. É ainda explicado como se pode validar a
especificação hierárquica da funcionalidade de unidades de controlo complexas
através da verificação automática e simulação da especificação baseada em HGSs.
Os modelos propostos de máquinas de estados são apresentados detalhadamente
tendo em atenção o seu funcionamento, implementação interna baseada em
memórias e sincronização, bem como as novas facilidades de flexibilidade e
extensibilidade que estes modelos apresentam.
É apresentada a metodologia manual da síntese lógica que é necessário
implementar a partir das especificações hierárquicas baseadas em HGSs ou
PHGSs de forma a construir a tabela de transição de estados que especifica a
máquina hierárquica ou paralela hierárquica, para as máquinas de estados de
Moore, Mealy ou mista Moore/Mealy. É também apresentado um programa que
implementa automaticamente a síntese lógica dos dois modelos de máquinas de
estados hierárquicas propostos a partir da especificação feita com HGSs.
Os modelos de arquitecturas propostas, bem como a metodologia de síntese,
foram validadas através de uma simulação em VHDL que foi feita usando as
ferramentas de simulação da Synopsys.Finite state machines (FSM) have been a topic of great importance in the last five
decades and have been used to specify and implement control units. Due to the
increasing complexity of control units and since the FSM model does not
explicitly support hierarchy and concurrency, new state-based models with
hierarchical and concurrent constructions were proposed in order to overcome
the limitations of the conventional FSM model and allowing the specification of
complex control units in a top-down manner. Still, there are not many hierarchical
FSM architectures (HFSM) that have been proposed to implement those
hierarchical specifications and most of them cannot be seen as a whole FSM
implementing internally in an efficient way the switching between the different
hierarchical levels of the machine, except for the HFSM with stack memory.
This thesis tackles the synthesis of FSMs from hierarchical specifications and
proposes two HFSMs and a parallel hierarchical FSM (PHFSM) with stack
memory that can provide such facilities as flexibility, extensibility and reusability.
It also presents the synthesis methodology from hierarchical specifications to the
generation of state transition tables that can be used to carry out the logic
synthesis of the proposed HFSM models.
Considering that the use of formal state-based models that provide hierarchical
and concurrent constructions is highly recommended for specifying complex
control units, hierarchical graph-schemes (HGS) and parallel hierarchical graphschemes
(PHGS) are used and some considerations about their execution and
correctness are presented. It is also explained how HGSs can be used to specify a
control algorithm and how it is possible to verify automatically its correctness and
to validate the intended functionality through simulation.
Using the first model of a HFSM with stack memory as a starting model, two new
models that can provide flexibility, extensibility and reusability and a PHFSM
model that combines hierarchy and pseudo-parallel execution of operations are
proposed. Their functionality, flexibility, extensibility, synchronisation and internal
realisation are fully explained.
To implement a control unit specified with a set of HGSs/PHGSs it is necessary
to perform the first step of the sequential logic synthesis, taking in consideration
the pretended target model. The manual synthesis methodology required to build
the state transition table of a HFSM/PHFSM starting from a hierarchical
specification based on HGSs/PHGSs is explained for a Moore, a Mealy and a
mixed Moore/Mealy FSM. A tool that automatically performs this first step for
the two HFSM models proposed is also presented.
In order to validate the proposed HFSM/PHFSM models and their synthesis, the
models were described in VHDL for a LUT-based implementation and simulated
using the Synopsys simulation tools
High-level synthesis of triple modular redundant FPGA circuits with energy efficient error recovery mechanisms
There is a growing interest in deploying commercial SRAM-based Field Programmable Gate Array (FPGA) circuits in space due to their low cost, reconfigurability, high logic capacity and rich I/O interfaces. However, their configuration memory (CM) is vulnerable to ionising radiation which raises the need for effective fault-tolerant design techniques. This thesis provides the following contributions to mitigate the negative effects of soft errors in SRAM FPGA circuits.
Triple Modular Redundancy (TMR) with periodic CM scrubbing or Module-based CM error recovery (MER) are popular techniques for mitigating soft errors in FPGA circuits. However, this thesis shows that MER does not recover CM soft errors in logic instantiated outside the reconfigurable regions of TMR modules. To address this limitation, a hybrid error recovery mechanism, namely FMER, is proposed. FMER uses selective periodic scrubbing and MER to recover CM soft errors inside and outside the reconfigurable regions of TMR modules, respectively. Experimental results indicate that TMR circuits with FMER achieve higher dependability with less energy consumption than those using periodic scrubbing or MER alone.
An imperative component of MER and FMER is the reconfiguration control network (RCN) that transfers the minority reports of TMR components, i.e., which, if any, TMR module needs recovery, to the FPGA's reconfiguration controller (RC). Although several reliable RCs have been proposed, a study of reliable RCNs has not been previously reported. This thesis fills this research gap, by proposing a technique that transfers the circuit's minority reports to the RC via the configuration-layer of the FPGA. This reduces the resource utilisation of the RCN and therefore its failure rate. Results show that the proposed RCN achieves higher reliability than alternative RCN architectures reported in the literature.
The last contribution of this thesis is a high-level synthesis (HLS) tool, namely TLegUp, developed within the LegUp HLS framework. TLegUp triplicates Xilinx 7-series FPGA circuits during HLS rather than during the register-transfer level pre- or post-synthesis flow stage, as existing computer-aided design tools do. Results show that TLegUp can generate non-partitioned TMR circuits with 500x less soft error sensitivity than non-triplicated functional equivalent baseline circuits, while utilising 3-4x more resources and having 11% lower frequency
- …