A Reconfigurable RTOS with HW/SW Co-scheduling for SOPC
|
|
|
- Aubrie Bennett
- 10 years ago
- Views:
Transcription
1 A Reconfigurable RTOS with HW/SW Co-scheduling for SOPC Qingxu Deng, Shuisheng Wei, Hai Xu, Yu Han, Ge Yu Department of Computer Science and Engineering Northeastern University, China Abstract Emerging reconfigurable hardware, SOPC (System On Programmable Chip), requires a RTOS to reuse the abundant source code. This paper presents a RTOS with the ability to co-schedule HW/SW, and discusses its architecture in detail for SOPC. The paper addresses an efficient run-time partitioning algorithm for block partitioning of FPGA. At last, a case study will be presented to validate our approach. The RTOS can decreases NRE costs and facilitates integrating hardware and software seamlessly. 1. Introduction Emerging trends in system design indicate that in the future, more roles will be played by System-on- Chip (SoC) platforms consisting of general-purpose, configurable components [1].For example, it enables designers to utilize a large FPGA that contains both memory and logic elements along with an IP processor core. The increasing densities and reconfiguration modes of SRAM-based field-programmable gate arrays (FPGAs) and configurable systems on a chip (CSoCs) advocate more dynamic uses of these components. These impose strict demands on system implementation technology. High performance requires application-specific architectures, but flexibility and system agility require a programmable, adaptable approach. Qingxu Deng and Hai xu have presented a methodology which is used for helping to design system platform for SOPC [2]. All our efforts are resolving issues of software reuse and hardware reconfiguration. We present a RTOS with HW/SW co-scheduling to manage the system physical resources and to help designers building their software platform. The RTOS forms an abstraction that hides the details of the underlying technology from the developer and decreases Time-to-market and Non- Recurring Engineering (NRE) costs. It also increases the reuse of software and the flexibility of hardware, and facilitates a natural style of hardware/software codesign for embedded system. The remainder of this paper is organized as follows. Section 2 presents a survey of related work in configurable OS for SoC. Section 3 shows the architecture of our RTOS and some concepts. In section 4, how to manage and utilize the reconfigurable resource is presented, and expatiate a partitioning algorithm. Hardware/software co-scheduling is presented in Section 5. Section 6 gives a case study and concludes the paper. 2. Related Works In this section, we briefly survey a selection of related work in the area of runtime reconfigurable platform operating system. As the complexity of SOC's architecture and application increases, reconfigurable hardware operating systems become a rather new line of research. The first description of hardware multitasking is due to Brebner [3]. He raised the issue of managing a virtual hardware resource. He proposed decomposing reconfigurable computing applications into swappable logic units (SLUs). Recently, Wigley et al. discussed OS services including device partitioning, placement and routing [4]. In [8], Mignolet et al. introduce relocatable tasks which can be executed either in software or in hardware, depending on the available resources and the performance required. Herbert Walder and Marco Platzner further the study of re-configurable hardware operating systems in a topdown manner [9]. In summary they don't provide feasible and unified hardware and software platform. Some ones only present a prototype or concepts. Our RTOS focus on software reuse and hardware reconfiguration to help the designers building their software platform. At the same time, it stresses real-time response and whole performance, and utilizes least hardware to satisfy the requirements.
2 3. System Model and Concepts Commercial RTOSs available for popular embedded processors enable the development of software-based real-time systems and significantly shorten the design period. But they typically take no advantage of hardware to implement any of their functions, probably because processors and custom hardware accelerators have historically resided on separate chips. Although sufficient for a limited number of RISC/DSP processors, these pure software kernels are of limited use for heterogeneous, dynamically reconfigurable designs. We present a RTOS with HW/SW co-scheduling to combine the software's reuse and hardware's performance. It gives the HW with OS level support. Its architecture is shown in Figure 1. Figure 1. System architecture. The application should be designed in an uniform HW/SW design environment. The application consists of several software tasks and hardware tasks. Hardware task is actually a circuit that can be configured and executed onto the device without affecting other currently running circuits. As for calling it task is to be consistent with the dynamic nature of software task. The task is the least execution unit in our system. We highly abstract the hardware task and software task with uniform interface to facilitate partitioning and coscheduling them. The kernel of RTOS provides multiple system services: managing resources, co-scheduling tasks, communicating between tasks and so on. Resources management is a general service that includes partitioning the reconfigurable area, managing the memory and mapping I/O devices. The communication service allows tasks interact with messages, regardless of hardware tasks or software tasks. We put forward software abstract layer (SAL) and hardware abstract layer (HAL) to facilitate co-scheduling and communicating. The SAL takes the application as input, and the partitioning of the tasks can be decided in consideration of designer's setting. The decision also can be made automatically for an efficient execution. The HAL is consists of IAL (IP core abstract layer) and FAL (FPGA abstract layer). We utilize it to abstract the IP core and reconfigurable logic to provide uniform interface.its main aim is to port and utilize them conveniently. 4. Reconfigurable Resource Management The partitioning and placement is an important issue in reconfigurable resource management. M. Gericota[10] and M. Handa[11] let us know that fragmentation of the FPGA's resources cause low area utilization in the dynamic reconfiguration systems. Bazargan et al. [12] addressed the issue of placing application mappings onto a single device for hardware execution in a reconfigurable computing system. Walder et al. [13] combined an enhanced form of Bazargan's partitioning algorithm and a placementfinding algorithm using 2D-hashing. Brebner and Diessel [14], present a 1D area model where tasks can be allocated anywhere along the horizontal dimension; the vertical dimension is fixed. In partially reconfigurable hardware platforms, the problems of task and resource management are even more strongly connected than in processor-based platforms, which make the design of runtime systems more challenging. We introduce an efficient partitioning algorithm for runtime reconfigurable platforms to achieve better hardware resources utilization and real-time capability. Although the algorithm seems somewhat simple, it can low the overhead and response time of the kernel and can offer a feasible partitioning solution. Hai Xu [2] discusses the main issues involved system behavioral description, HW/SW partitioning and mapping them to a set of tasks. It is highly desirable to perform the partitioning aiming at minimizing the overall inter-task communication. The shape of a hardware task is mostly modeled by a rectangle as well as the routing resources used by the task. The granularity of the resulting tasks is in itself an important issue. The larger is the average size of the tasks, the more tractable are the dynamic placement and routing problems. However, smaller tasks create more opportunities for task reuse, and thus potentially minimize. The need for dynamic reconfiguration, our current rule-of-thumb, is that a task should occupy no less than 10 As follows, we simply discuss the algorithm. We adopt 1D area model and partition the horizontal dimension into segments (the size and number of the segment are decided by designer or system), as Figure 2 shows.
3 Figure 2. Area partition. Figure 3. Hardware task blocks. So we can manage the area in linear memory. For the area in segments, we logically divide them into three types: blank area(no tasks used it before)running area(there is a task running in it)reserved area it is reserved for a periodic task running next time. Every segment has a non-running area interval list which records blank area interval and reserved area interval (stores the interval points in sequence).when a task applies the reconfigurable hardware resource, we check the shape of it. If both the height (h) and the width (w) of a task (h,w) exceed the segments' width(wi),we consider repartitioning the tasks into small sub-tasks until an adequate task granularity is achieved. We adopts compile and decompile technology for repartitioning the task. Otherwise, we choose a segment that can satisfy the task's requirement for landing edge (width or height that is close to Wi). We search the non-running area list of the segment, and blank areas are considered first. If there are no continuous blank areas, we consider occupying the reserved area (search the similarest reserved area) or merging reasonable blank area and reserved area. If there is still not enough continuous area, we check whether can preempt tasks (discussed in section 6). If width (w) is the landing edge, we assign directly corresponding height (h) of the resource (Figure 3 task A,C,D). If height is(figure 3 task B), we calculate the utilization factor for height and width separately to see whether is good for rotating the task. If the difference of utilization factors, we call it Utilization Factor Difference, is less than the value that designer has set we make it a 90 clockwise rotation. We assume that modules are relocatable, it is possible to change the routing programmed into each cell to reflect the overall rotation of the configuration. We always assign regular resource area (h Wi), as Figure 4 shows. When the task has executed, the periodic task can apply to reserve the area that it has used, and system change the running area into reserved area. So it can decrease the configuration overhead. Other tasks free the resource directly and the area interval is inserted into nonrunning area interval list. At this time merging blank area interval is involved(one's upper bound is equal to the other's lower bound, eg.[4,5] and [5,10] into [4,10]). Figure 5 shows the situations of task placement. In consideration of the real-time requirement, only when it is lower than the utilization factor difference, we just rotate the task. If the HW/SW partition is reasonable in the initial stage, and the task granularity and segment's width are appropriate, there are fewer chances to repartition the task.the partitioning algorithmcan be customized with requirements. Figure 4. Resource block. Figure 5. Task placement. 5. Hardware/Software Co-scheduling 5.1. Online Scheduling Issues One of the first descriptions of hardware multitasking is due to Brebner [3]. The preemption of hardware tasks was investigated by Simmler et al. [5]. Diessel [16] discusses how to deal with partial reconfiguration and multi-tasking for rearrangement of tasks on FPGAs, which lacks real-time capabilities. H. Walder[15] propose an online scheduling system that allocates tasks to a block-partitioned reconfigurable device. However, they didn't refer to HW/SW coscheduling.
4 There are several advantages for multitasking in FPGA: First, parallel execution of several tasks in the same FPGA is possible. Second, the programmer does not need to care about resource sharing and so writing FPGA designs is much easier, because each FPGA design has the complete set of I/O resources available. But the tasks have some restriction conditions for hardware multitasking: relocatability, independence, required cycles and so on. So we implement these tasks in hardware and the others in software that are not feasible for hardware multitasking. Our goal is holding implementation efficiency and design flexibility. The RTOS keeps track of the HW/SW tasks by means of a uniform task information structure list. Every task instantiation is linked to such a task information structure. We divide tasks into types: period/aperiodic, static/dynamic, preemptive/nonpreemptive, and every task have an exclusive priority. There is a task state graph to show the kernel how to schedule the HW/SW tasks, Figure Uniform Communication between HW/SW Tasks By providing a uniform communication scheme for hardware and software tasks, the kernel we developed hides the complexity of co-scheduling tasks. In our approach, communication between tasks is based on message passing. Messages are transferred from one task to another in a common format for both hardware and software tasks, and have a priority. Both the operating system and the hardware architecture should support this kind of communication. At the same time we provide event, mailbox and semaphore service. All the communication services are achieved by sharing memory. In our communication scheme, there are three distinguished types of message passing between tasks. Figure 6. Task state graph. Fig. 8. Message passing between tasks. Table 1. Benchmark loop information. Figure 7. Co-scheduling structure. The problems of scheduling tasks are strongly interrelated with resource management in hardware platforms. We discuss how to manage the reconfigurable hardware resource and how to place the tasks in section 4. We show the HW/SW co-scheduling structure in Figure 7. Actuallywe suggest that should decrease the chance of preempt the hardware task, because it is a work with heavy time cost and memory cost. As Figure 8 shows, messages between two tasks that are scheduled in the soft CPU (T1 and T2), are routed solely based on memory address and do not pass the HAL. Communication between a software task and a hardware task (T2 and T3) must pass through the hardware abstraction layer. In this case, an address mapping is performed by the communication service. The task's physical address allows the HAL to determine which task will receive the message. 5.3 Task Context Switch Issues Consequently, the state of a preempted task can be fully saved by pushing all the registers on the task
5 stack.this approach is not usable for a hardware task. A FPGA design normally does not have a code or data descriptor like a CPU. Instead of the handful of registers and required to specify the state of a software task (in addition to its memory contents), the hardware process may have a large number of internal registers. Rather, an FPGA holds data in several registers scattered over the FPGA. It depicts its state in a completely different way: state information is held in several registers, latches and internal memory, in a way that is very specific for a given task implementation. There is no simple, universal state representation, as for tasks executing on the CPU. Nevertheless, the operating system will need a way to extract and restore the state of a task executing in hardware, since this is a key issue when enabling implement preemptive scheduling. A way to extract and restore state when dealing with tasks executing on the recon gurable logic, is described in[5]. State extraction is achieved by getting all status information bits out of the read back bitstream. We should do our best to decrease the situation of preempting the hardware tasks, because it affects the real-time capability and needs lots of memory. Furthermore, the FPGA was configured within 70 ms and readback takes 800 ms. The memory requirement is up to 350 Kbytes for a modern FPGA device. Although we extract the state bits that are then stored and form the basis for the reconstruction, and the memory requirement is also about 300 Kbytes. We use a high level abstraction of the state information for hardware tasks, and the preemptive hardware task has a memory area to store the state bits. When partitioning the hardware and software tasks, we should cautiously consider which task is preemptive. 6. Preliminary Results We use Memec Virtex-4 LC Development Kit in our experiment. The clock speed for the MIPS is 100 MHz at a supply voltage of 1.2V, and we used Xilinx's Virtex Power Estimator [22] to estimate power for each example. Here, we use an operating system, and this cause the result di erent from those of no operating system supporting as for most of the test cases. We examined several examples from Motorola's Powerstone [21] benchmark suite: a voice encoder (adpcm), a cyclic redundancy check (crc), a data encryption standard (des), an engine controller (engine), a fax decoder (g3fax), a JPEG decoder (jpeg), a handwriting recognizer (summin), and a modem encoder/decoder (v42). We implement each example, using the input vectors in Powerstone, on an instruction set simulator for an MIPS microprocessor, augmented to output instruction traces. Table 1 summarizes the relevant loop data for our benchmarks. Size indicates the total number of instructions in the program, and Loop Instr is the number of instructions in the region(s) moved to hardware. Loop Time is the percentage of total execution time taken by the region(s). CSL Size is the number of configurable logic blocks required by those regions. The test results for our method are summarized in Table2. Sw is the total number of cycles to execute the example completely in software. Loop in sw is the total cycles required by the loop when running in software. Loop in CSL is the number of cycles required by the loop when running in custom hardware. Sw/CSL is the number of cycles required to execute the entire program after partitioning. Speed-up is the resulting speedup after partitioning. Performance of Co-scheduling RTOS and General RTOS are the test results of executing all the bench marks at one time. Table 2. Benchmark test results. 7. Conclusions and Future Work As shown in the table 2, we conclude that using such a RTOS for SOPC can greatly improve the performance of embedded system. The higher abstraction is, the better reuse will be. Such a HW/SW co-scheduling RTOS will reuse the abundant resource of source code, so it can decreases Time-to-market and Non-Recurring Engineering (NRE) costs. The flexibility of the hardware, reconfigurable system, make the system meet many different kinds of application requirements, and only making a few changes will enable the system qualify for another kind of application. In the future, we expect the kernel support transforming HW/SW tasks mutually to make best use of software and hardware. SAL needs further abstraction for HW/SW tasks, so less need for designer to concern whether a task is SW or HW. We also plan
6 to extend our research to the configuration of heterogeneous multi-processor systems. References [1] Krishna Sekar, Kanishka Lahiri, Sujit Dey. Configurable Platforms with Dynamic Platform Management: An Efficient Alternative to Application-Specific System-on-Chips. Proceedings of the 17th International Conference on VLSI Design (VLSID'04), IEEE, 2004 [2] Qingxu Deng, Hai Xu, etc. An Embedded SOPC System Using Automation Design. ICPP05, IEEE, 2005 [3] G. Brebner. A Virtual Hardware Operating System for the Xilinx XC6200. In Proceedings of the 6th International Workshop on Field-Programmable Logic and Applications (FPL), Springer,1996. [4] G. Wigley, D. Kearney. Research Issues in Operating Systems for Reconfigurable Computing. In Proceedings of the International Conference on Engineering of Reconfigurable System and Algorithms(ERSA), CSREA Press, [5] H. Simmler, L. Levinson, R. Manner. "Multitasking on FPGA Coprocessors". In Proceedings of the 10th International Workshop on Field Programmable Gate Arrays (FPL), pages Springer, [6] G. Brebner, O. Diessel. Chip-Based Reconfigurable Task Management. In Proceedings of the 11th International Workshop on Field Programmable Gate Arrays (FPL), pages Springer, [7] H. Walder, M. Platzner. Online Scheduling for Blockpartitioned Reconfigurable Devices. In Proceedings of Design, Automation and Test in Europe (DATE), pages IEEE Computer Society, March [8] J.-Y. Mignolet, V. Nollet, P. Coene, D. Verkest, V. S., R. Lauwreins. Infrastructure for Design and Management of Relocatable Tasks in a Heterogeneous Reconfigurable System-on-Chip. In Proceedings of Design, Automation and Test in Europe (DATE), pages IEEE Computer Society, March [9] Herbert Walder, Marco Platzner. Reconfigurable Hardware Operating Systems: From Design Concepts to Realizations. Engineering of Reconfigurable Systems and Algorithms, pp: , [10] M. Gericota, G. Alves, M. Silva, J. Ferreira. Run-Time Management of Logic Resources on Reconfigurable Systems, In Proc. of Design, Automation and Test in Europe, Mar [11] M. Handa, R. Vemuri. Area Fragmentation in Reconfigurable Operating Systems. In Proc. of the International Conference on Engineering of Reconfigurable Systems and Algorithms. CSREA Press, Jun [12] Kiarash Bazargan, Ryan Kastner, Majid Sarrafzadeh. Fast Template Placement for Reconfigurable Computing Systems. In IEEE Design and Test of Computers, volume 17, pp 68-83, [13] HerbertWalder, Marco Platzner. Fast On-line Task Placement on FPGAs: Free Space Partitioning and 2D- Hashing. 17th International Parallel and Distributed Processing Symposium, [14] Gordon Brebner, Oliver Diessel. Chip-Based Reconfigurable Task Management. In Proc. 11th Intel Workshop on Field Programmable Gate Arrays (FPL), pages , [15] H. Walder, M. Platzner. Online scheduling for blockpartitioned reconfigurable devices. In Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, Munich, Mar [16] Diessel, O., H.ElGindy (1997). Partial FPGA Rearrangement by Local Repacking. Technical Report 97-02, Dept. of Comp. Sci. and Software Engr., Univ. of Newcastle, Australia.
Online Scheduling for Block-partitioned Reconfigurable Devices
Online Scheduling for Block-partitioned Reconfigurable Devices Herbert Walder and Marco Platzner Computer Engineering and Networks Lab Swiss Federal Institute of Technology (ETH) Zurich, Switzerland [email protected]
International Journal of Advancements in Research & Technology, Volume 2, Issue3, March -2013 1 ISSN 2278-7763
International Journal of Advancements in Research & Technology, Volume 2, Issue3, March -2013 1 FPGA IMPLEMENTATION OF HARDWARE TASK MANAGEMENT STRATEGIES Assistant professor Sharan Kumar Electronics Department
7a. System-on-chip design and prototyping platforms
7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit
Reconfigurable Architecture Requirements for Co-Designed Virtual Machines
Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada [email protected] Micaela Serra
ELEC 5260/6260/6266 Embedded Computing Systems
ELEC 5260/6260/6266 Embedded Computing Systems Spring 2016 Victor P. Nelson Text: Computers as Components, 3 rd Edition Prof. Marilyn Wolf (Georgia Tech) Course Topics Embedded system design & modeling
Architectures and Platforms
Hardware/Software Codesign Arch&Platf. - 1 Architectures and Platforms 1. Architecture Selection: The Basic Trade-Offs 2. General Purpose vs. Application-Specific Processors 3. Processor Specialisation
GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications
GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications Harris Z. Zebrowitz Lockheed Martin Advanced Technology Laboratories 1 Federal Street Camden, NJ 08102
International Workshop on Field Programmable Logic and Applications, FPL '99
International Workshop on Field Programmable Logic and Applications, FPL '99 DRIVE: An Interpretive Simulation and Visualization Environment for Dynamically Reconægurable Systems? Kiran Bondalapati and
FPGA area allocation for parallel C applications
1 FPGA area allocation for parallel C applications Vlad-Mihai Sima, Elena Moscu Panainte, Koen Bertels Computer Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University
Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC
Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC Yuan-Hsiu Chen and Pao-Ann Hsiung National Chung Cheng University, Chiayi, Taiwan 621, ROC. [email protected]
Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models
System Development Models and Methods Dipl.-Inf. Mirko Caspar Version: 10.02.L.r-1.0-100929 Contents HW/SW Codesign Process Design Abstraction and Views Synthesis Control/Data-Flow Models System Synthesis
Chapter 2 Features of Embedded System
Chapter 2 Features of Embedded System Abstract This chapter will introduce the basic elements of embedded systems (or dedicated systems). The integrated control systems represent one of the areas of modern
Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association
Making Multicore Work and Measuring its Benefits Markus Levy, president EEMBC and Multicore Association Agenda Why Multicore? Standards and issues in the multicore community What is Multicore Association?
Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and
Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and Simulink targeting ASIC/FGPA. Previously Worked as logic
How To Design An Image Processing System On A Chip
RAPID PROTOTYPING PLATFORM FOR RECONFIGURABLE IMAGE PROCESSING B.Kovář 1, J. Kloub 1, J. Schier 1, A. Heřmánek 1, P. Zemčík 2, A. Herout 2 (1) Institute of Information Theory and Automation Academy of
A Framework for Automatic Generation of Configuration Files for a Custom Hardware/Software RTOS
A Framework for Automatic Generation of Configuration Files for a Custom Hardware/Software Jaehwan Lee, Kyeong Keol Ryu and Vincent John Mooney III School of Electrical and Computer Engineering Georgia
NIOS II Based Embedded Web Server Development for Networking Applications
NIOS II Based Embedded Web Server Development for Networking Applications 1 Sheetal Bhoyar, 2 Dr. D. V. Padole 1 Research Scholar, G. H. Raisoni College of Engineering, Nagpur, India 2 Professor, G. H.
Seeking Opportunities for Hardware Acceleration in Big Data Analytics
Seeking Opportunities for Hardware Acceleration in Big Data Analytics Paul Chow High-Performance Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Toronto Who
Power Reduction Techniques in the SoC Clock Network. Clock Power
Power Reduction Techniques in the SoC Network Low Power Design for SoCs ASIC Tutorial SoC.1 Power Why clock power is important/large» Generally the signal with the highest frequency» Typically drives a
Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com
Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and
Networking Remote-Controlled Moving Image Monitoring System
Networking Remote-Controlled Moving Image Monitoring System First Prize Networking Remote-Controlled Moving Image Monitoring System Institution: Participants: Instructor: National Chung Hsing University
Performance Oriented Management System for Reconfigurable Network Appliances
Performance Oriented Management System for Reconfigurable Network Appliances Hiroki Matsutani, Ryuji Wakikawa, Koshiro Mitsuya and Jun Murai Faculty of Environmental Information, Keio University Graduate
Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001
Agenda Introduzione Il mercato Dal circuito integrato al System on a Chip (SoC) La progettazione di un SoC La tecnologia Una fabbrica di circuiti integrati 28 How to handle complexity G The engineering
Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education
Lesson 7: SYSTEM-ON ON-CHIP (SoC( SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY 1 VLSI chip Integration of high-level components Possess gate-level sophistication in circuits above that of the counter,
HARDWARE IMPLEMENTATION OF TASK MANAGEMENT IN EMBEDDED REAL-TIME OPERATING SYSTEMS
HARDWARE IMPLEMENTATION OF TASK MANAGEMENT IN EMBEDDED REAL-TIME OPERATING SYSTEMS 1 SHI-HAI ZHU 1Department of Computer and Information Engineering, Zhejiang Water Conservancy and Hydropower College Hangzhou,
System Software Integration: An Expansive View. Overview
Software Integration: An Expansive View Steven P. Smith Design of Embedded s EE382V Fall, 2009 EE382 SoC Design Software Integration SPS-1 University of Texas at Austin Overview Some Definitions Introduction:
Introduction to Digital System Design
Introduction to Digital System Design Chapter 1 1 Outline 1. Why Digital? 2. Device Technologies 3. System Representation 4. Abstraction 5. Development Tasks 6. Development Flow Chapter 1 2 1. Why Digital
Adaptive Allocation of Software and Hardware Real-Time Tasks for FPGA-based Embedded Systems
Adaptive Allocation of Software and Hardware Real-ime asks for FPGA-based Embedded Systems Rodolfo Pellizzoni and Marco Caccamo Department of Computer Science, University of Illinois at Urbana-Champaign
Partial and Dynamic reconfiguration of FPGAs: a top down design methodology for an automatic implementation
Partial and Dynamic reconfiguration of FPGAs: a top down design methodology for an automatic implementation Florent Berthelot, Fabienne Nouvel, Dominique Houzet To cite this version: Florent Berthelot,
Online Scheduling and Placement of Real-time Tasks to Partially Reconfigurable Devices
Online Scheduling and Placement of Real-time Tasks to Partially Reconfigurable Devices Christoph Steiger, Herbert Walder, Marco Platzner, Lothar Thiele Computer Engineering and Networks Lab Swiss Federal
Accelerate Cloud Computing with the Xilinx Zynq SoC
X C E L L E N C E I N N E W A P P L I C AT I O N S Accelerate Cloud Computing with the Xilinx Zynq SoC A novel reconfigurable hardware accelerator speeds the processing of applications based on the MapReduce
System-on. on-chip Design Flow. Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems. jouni.tomberg@tut.
System-on on-chip Design Flow Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems [email protected] 26.03.2003 Jouni Tomberg / TUT 1 SoC - How and with whom?
9/14/2011 14.9.2011 8:38
Algorithms and Implementation Platforms for Wireless Communications TLT-9706/ TKT-9636 (Seminar Course) BASICS OF FIELD PROGRAMMABLE GATE ARRAYS Waqar Hussain [email protected] Department of Computer
Chapter 1: Operating System Models 1 2 Operating System Models 2.1 Introduction Over the past several years, a number of trends affecting operating system design are witnessed and foremost among them is
Design of a High Speed Communications Link Using Field Programmable Gate Arrays
Customer-Authored Application Note AC103 Design of a High Speed Communications Link Using Field Programmable Gate Arrays Amy Lovelace, Technical Staff Engineer Alcatel Network Systems Introduction A communication
Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah
(DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de [email protected] NIOS II 1 1 What is Nios II? Altera s Second Generation
Introduction to System-on-Chip
Introduction to System-on-Chip COE838: Systems-on-Chip Design http://www.ee.ryerson.ca/~courses/coe838/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer Engineering Ryerson University
High-Level Synthesis for FPGA Designs
High-Level Synthesis for FPGA Designs BRINGING BRINGING YOU YOU THE THE NEXT NEXT LEVEL LEVEL IN IN EMBEDDED EMBEDDED DEVELOPMENT DEVELOPMENT Frank de Bont Trainer consultant Cereslaan 10b 5384 VT Heesch
Defining Platform-Based Design. System Definition. Platform Based Design What is it? Platform-Based Design Definitions: Three Perspectives
Based Design What is it? Question: How many definitions of Based Design are there? Defining -Based Design Answer: How many people to you ask? What does the confusion mean? It is a definition in transition
ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT
216 ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT *P.Nirmalkumar, **J.Raja Paul Perinbam, @S.Ravi and #B.Rajan *Research Scholar,
3D On-chip Data Center Networks Using Circuit Switches and Packet Switches
3D On-chip Data Center Networks Using Circuit Switches and Packet Switches Takahide Ikeda Yuichi Ohsita, and Masayuki Murata Graduate School of Information Science and Technology, Osaka University Osaka,
FPGA-based Multithreading for In-Memory Hash Joins
FPGA-based Multithreading for In-Memory Hash Joins Robert J. Halstead, Ildar Absalyamov, Walid A. Najjar, Vassilis J. Tsotras University of California, Riverside Outline Background What are FPGAs Multithreaded
ESE566 REPORT3. Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU
ESE566 REPORT3 Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU Nov 19th, 2002 ABSTRACT: In this report, we discuss several recent published papers on design methodologies of core-based
Networking Virtualization Using FPGAs
Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Massachusetts,
Data Center and Cloud Computing Market Landscape and Challenges
Data Center and Cloud Computing Market Landscape and Challenges Manoj Roge, Director Wired & Data Center Solutions Xilinx Inc. #OpenPOWERSummit 1 Outline Data Center Trends Technology Challenges Solution
Chapter 2 Logic Gates and Introduction to Computer Architecture
Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are
Control 2004, University of Bath, UK, September 2004
Control, University of Bath, UK, September ID- IMPACT OF DEPENDENCY AND LOAD BALANCING IN MULTITHREADING REAL-TIME CONTROL ALGORITHMS M A Hossain and M O Tokhi Department of Computing, The University of
Electronic system-level development: Finding the right mix of solutions for the right mix of engineers.
Electronic system-level development: Finding the right mix of solutions for the right mix of engineers. Nowadays, System Engineers are placed in the centre of two antagonist flows: microelectronic systems
A Hardware-Software Cosynthesis Technique Based on Heterogeneous Multiprocessor Scheduling
A Hardware-Software Cosynthesis Technique Based on Heterogeneous Multiprocessor Scheduling ABSTRACT Hyunok Oh cosynthesis problem targeting the system-on-chip (SOC) design. The proposed algorithm covers
Real-Time Operating Systems for MPSoCs
Real-Time Operating Systems for MPSoCs Hiroyuki Tomiyama Graduate School of Information Science Nagoya University http://member.acm.org/~hiroyuki MPSoC 2009 1 Contributors Hiroaki Takada Director and Professor
Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs. Jim Ready September 18, 2012
Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs Jim Ready September 18, 2012 How HW guys view the world SW Software HW How SW guys view the world SW HW Reality The SoC Software
A General Framework for Tracking Objects in a Multi-Camera Environment
A General Framework for Tracking Objects in a Multi-Camera Environment Karlene Nguyen, Gavin Yeung, Soheil Ghiasi, Majid Sarrafzadeh {karlene, gavin, soheil, majid}@cs.ucla.edu Abstract We present a framework
Embedded System Hardware - Processing (Part II)
12 Embedded System Hardware - Processing (Part II) Jian-Jia Chen (Slides are based on Peter Marwedel) Informatik 12 TU Dortmund Germany Springer, 2010 2014 年 11 月 11 日 These slides use Microsoft clip arts.
Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor
Von der Hardware zur Software in FPGAs mit Embedded Prozessoren Alexander Hahn Senior Field Application Engineer Lattice Semiconductor AGENDA Overview Mico32 Embedded Processor Development Tool Chain HW/SW
EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview
EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: [email protected] Feb. 2013 Course Overview
Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit
1 Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT OF FOR THE DEGREE IN Bachelor of Technology In Electronics and Communication
Offline HW/SW Authentication for Reconfigurable Platforms
Offline HW/SW Authentication for Reconfigurable Platforms Eric Simpson Virginia Tech [email protected] Patrick Schaumont Virginia Tech [email protected] Abstract Many Field-Programmable Gate Array (FPGA) based
Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:
Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.
Operating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
Introduction to Embedded Systems. Software Update Problem
Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis logistics minor Today s topics: more software development issues 1 CS 5780 Software Update Problem Lab machines work let us know if they don t
Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng
Architectural Level Power Consumption of Network Presenter: YUAN Zheng Why Architectural Low Power Design? High-speed and large volume communication among different parts on a chip Problem: Power consumption
Hard Real-Time Reconfiguration Port Scheduling
Hard Real-Time Reconfiguration Port Scheduling Florian Dittmann and Stefan Frank Heinz Nixdorf Institute, University of Paderborn Fuerstenallee, 330 Paderborn, Germany {roichen, sfrank}@upb.de Abstract
Automatized Fault Attack Emulation for Penetration Testing
Automatized Fault Attack Emulation for Penetration Testing Johannes Grinschgl 1, Thomas Aichinger 3, Armin Krieg 1, Christian Steger 1, Reinhold Weiss 1, Holger Bock 2, Josef Haid 2 1, Graz University
Testing of Digital System-on- Chip (SoC)
Testing of Digital System-on- Chip (SoC) 1 Outline of the Talk Introduction to system-on-chip (SoC) design Approaches to SoC design SoC test requirements and challenges Core test wrapper P1500 core test
Systems on Chip Design
Systems on Chip Design College: Engineering Department: Electrical First: Course Definition, a Summary: 1 Course Code: EE 19 Units: 3 credit hrs 3 Level: 3 rd 4 Prerequisite: Basic knowledge of microprocessor/microcontroller
Online Clock Routing in Xilinx FPGAs for High-Performance and Reliability
Online Clock Routing in Xilinx FPGAs for High-Performance and Reliability Xabier Iturbe, Khaled Benkrid, Raul Torrego, Ali Ebrahim and Tughrul Arslan System Level Integration Group, The University of Edinburgh,
FPGA-based MapReduce Framework for Machine Learning
FPGA-based MapReduce Framework for Machine Learning Bo WANG 1, Yi SHAN 1, Jing YAN 2, Yu WANG 1, Ningyi XU 2, Huangzhong YANG 1 1 Department of Electronic Engineering Tsinghua University, Beijing, China
Weighted Total Mark. Weighted Exam Mark
CMP2204 Operating System Technologies Period per Week Contact Hour per Semester Total Mark Exam Mark Continuous Assessment Mark Credit Units LH PH TH CH WTM WEM WCM CU 45 30 00 60 100 40 100 4 Rationale
SDR Architecture. Introduction. Figure 1.1 SDR Forum High Level Functional Model. Contributed by Lee Pucker, Spectrum Signal Processing
SDR Architecture Contributed by Lee Pucker, Spectrum Signal Processing Introduction Software defined radio (SDR) is an enabling technology, applicable across a wide range of areas within the wireless industry,
http://www.ece.ucy.ac.cy/labs/easoc/people/kyrkou/index.html BSc in Computer Engineering, University of Cyprus
Christos Kyrkou, PhD KIOS Research Center for Intelligent Systems and Networks, Department of Electrical and Computer Engineering, University of Cyprus, Tel:(+357)99569478, email: [email protected] Education
An Open Architecture through Nanocomputing
2009 International Symposium on Computing, Communication, and Control (ISCCC 2009) Proc.of CSIT vol.1 (2011) (2011) IACSIT Press, Singapore An Open Architecture through Nanocomputing Joby Joseph1and A.
What is a System on a Chip?
What is a System on a Chip? Integration of a complete system, that until recently consisted of multiple ICs, onto a single IC. CPU PCI DSP SRAM ROM MPEG SoC DRAM System Chips Why? Characteristics: Complex
Multiprocessor System-on-Chip
http://www.artistembedded.org/fp6/ ARTIST Workshop at DATE 06 W4: Design Issues in Distributed, CommunicationCentric Systems Modelling Networked Embedded Systems: From MPSoC to Sensor Networks Jan Madsen
SOCWIRE: A SPACEWIRE INSPIRED FAULT TOLERANT NETWORK-ON-CHIP FOR RECONFIGURABLE SYSTEM-ON-CHIP DESIGNS
SOCWIRE: A SPACEWIRE INSPIRED FAULT TOLERANT NETWORK-ON-CHIP FOR RECONFIGURABLE SYSTEM-ON-CHIP DESIGNS IN SPACE APPLICATIONS Session: Networks and Protocols Long Paper B. Osterloh, H. Michalik, B. Fiethe
A Generic Network Interface Architecture for a Networked Processor Array (NePA)
A Generic Network Interface Architecture for a Networked Processor Array (NePA) Seung Eun Lee, Jun Ho Bahn, Yoon Seok Yang, and Nader Bagherzadeh EECS @ University of California, Irvine Outline Introduction
CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study
CS 377: Operating Systems Lecture 25 - Linux Case Study Guest Lecturer: Tim Wood Outline Linux History Design Principles System Overview Process Scheduling Memory Management File Systems A review of what
White Paper. S2C Inc. 1735 Technology Drive, Suite 620 San Jose, CA 95110, USA Tel: +1 408 213 8818 Fax: +1 408 213 8821 www.s2cinc.com.
White Paper FPGA Prototyping of System-on-Chip Designs The Need for a Complete Prototyping Platform for Any Design Size, Any Design Stage with Enterprise-Wide Access, Anytime, Anywhere S2C Inc. 1735 Technology
Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip
Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip Ms Lavanya Thunuguntla 1, Saritha Sapa 2 1 Associate Professor, Department of ECE, HITAM, Telangana
Performance Comparison of RTOS
Performance Comparison of RTOS Shahmil Merchant, Kalpen Dedhia Dept Of Computer Science. Columbia University Abstract: Embedded systems are becoming an integral part of commercial products today. Mobile
2. TEACHING ENVIRONMENT AND MOTIVATION
A WEB-BASED ENVIRONMENT PROVIDING REMOTE ACCESS TO FPGA PLATFORMS FOR TEACHING DIGITAL HARDWARE DESIGN Angel Fernández Herrero Ignacio Elguezábal Marisa López Vallejo Departamento de Ingeniería Electrónica,
synthesizer called C Compatible Architecture Prototyper(CCAP).
Speed Improvement of AES Encryption using hardware accelerators synthesized by C Compatible Architecture Prototyper(CCAP) Hiroyuki KANBARA Takayuki NAKATANI Naoto UMEHARA Nagisa ISHIURA Hiroyuki TOMIYAMA
DEVELOPMENT OF DEVICES AND METHODS FOR PHASE AND AC LINEARITY MEASUREMENTS IN DIGITIZERS
DEVELOPMENT OF DEVICES AND METHODS FOR PHASE AND AC LINEARITY MEASUREMENTS IN DIGITIZERS U. Pogliano, B. Trinchera, G.C. Bosco and D. Serazio INRIM Istituto Nazionale di Ricerca Metrologica Torino (Italia)
Outline. Introduction. Multiprocessor Systems on Chip. A MPSoC Example: Nexperia DVP. A New Paradigm: Network on Chip
Outline Modeling, simulation and optimization of Multi-Processor SoCs (MPSoCs) Università of Verona Dipartimento di Informatica MPSoCs: Multi-Processor Systems on Chip A simulation platform for a MPSoC
Optimizing Configuration and Application Mapping for MPSoC Architectures
Optimizing Configuration and Application Mapping for MPSoC Architectures École Polytechnique de Montréal, Canada Email : [email protected] 1 Multi-Processor Systems on Chip (MPSoC) Design Trends
CAD TOOLS FOR VLSI. FLOORPLANNING Page 1 FLOORPLANNING
FLOORPLANNING Page 1 FLOORPLANNING Floorplanning: taking layout information into account at early stages of the design process. BEHAVIORAL D. STRUCTURAL D. Systems Algorithms Processors Register transfers
MATLAB/Simulink Based Hardware/Software Co-Simulation for Designing Using FPGA Configured Soft Processors
MATLAB/Simulink Based Hardware/Software Co-Simulation for Designing Using FPGA Configured Soft Processors Jingzhao Ou and Viktor K. Prasanna Department of Electrical Engineering, University of Southern
