首页> 外文OA文献 >Reconfigurable Computing Based on Commercial FPGAs. Solutions for the Design and Implementation of Partially Reconfigurable Systems = Computación reconfigurable basada en FPGAs comerciales. Soluciones para el diseño e implementación de sistemas parcialmente reconfigurables.
【2h】

Reconfigurable Computing Based on Commercial FPGAs. Solutions for the Design and Implementation of Partially Reconfigurable Systems = Computación reconfigurable basada en FPGAs comerciales. Soluciones para el diseño e implementación de sistemas parcialmente reconfigurables.

机译:基于商用FPGA的可重构计算。设计和实现部分可重配置系统的解决方案=基于商用FPGA的可重配置计算。设计和实现部分可重配置系统的解决方案。

摘要

Esta tesis doctoral está enmarcada en el campo de investigación de la computación reconfigurable. Este campo ha experimentado un crecimiento abrumador en los últimos años como resultado de la evolución de los dispositivos reconfigurables, donde las Field Programmable Gate Arrays (FPGAs) son el máximo exponente desde el punto de vista comercial. De forma tradicional las empresas de electrónica han seleccionado las FPGAs como prototipos iníciales de productos de altas prestaciones. Luego el sistema final es integrado en Application Specific Integrated Circuits (ASICs) que se producen en grandes volúmenes perimiendo amortiza su alto coste de diseño y producción y aprovechando la ventaja del bajo coste por unidad. Por otro lado, los DSPs (Digital Signal Processing) y los microprocesadores han sido preferidos por su bajo coste ante las FPGAs el campo de los dispositivos con menores requisitos de cómputo. En los últimos años, este panorama está sufriendo una serie de cambios. Ahora el mercado busca mas soluciones “reconfigurables” ya que permiten reducir el tiempo de salida del producto al mercado (time-to-market), aumentar el tiempo del producto en el mercado (time-in-market) y además cubren los amplios requisitos de cómputo. El cambio que se observa, se debe a que los dispositivos programables han evolucionado de simples estructuras programables a complejas plataformas reconfigurables. Las FPGAs del estado de la técnica han alcanzado un grado de integración muy alto y además ahora contienen, dentro de su arquitectura programable, microprocesadores y lógica específica de procesamiento digital de señal. Otro factor sumamente importante para el cambio es que las FPGAs permiten el diseño de dispositivos cuyo hardware pueden ser adaptado, o actualizado, una vez que el producto ya esta entregado e instalado, obteniendo así una flexibilidad en el hardware comparable con la del software, donde la actualización postventa de los sistemas es una práctica muy explotada de cara a la reducción de costes y la salida rápida al mercado. Por otro lado, y sobre todo en el ámbito académico, existen dispositivos reconfigurables con distinta granularidad que permites alcanzar altas prestaciones en comparación con las FPGAs comerciales de grano fino (comparable con la de los ASICs), pero están restringidas a una aplicación o grupo de aplicaciones. A pesar de que los dispositivos reconfigurables propietarios ofrecen muchas ventajas, esta opción ha sido descartada en la presente tesis debido a que, desde el punto de vista industrial requieren, aparte del diseño del ASIC reconfigurable, el desarrollo de un entorno de diseño completo. Todo esto conlleva a un elevado coste de recursos, además del alejamiento de las propuestas de la industria. La presente tesis se ha centrado en proporcionar soluciones para dispositivos comerciales, FPGAs de grano fino, con la finalidad de aprovechar las herramientas existentes y mantener las soluciones propuestas lo más cerca posible de la industria. Los dispositivos reconfigurables proporcionan diversos métodos de reconfiguración, siendo el más atractivo la reconfiguración parcial y dinámica, ya que permite adaptar el dispositivo sin interrumpir su funcionamiento y crear dispositivos auto-adaptables. Este tipo de reconfiguración será el objeto de estudio de la tesis doctoral. La reconfiguración parcial permite tener una serie de tareas hardware (módulos que se ubican en la estructura reconfigurable) ejecutándose paralelamente en la FPGA y sustituir un bloque por otro, dependiendo de las necesidades del sistema, sin alterar el funcionamiento del resto de bloques. Esta idea básica en teoría brinda la flexibilidad del software al hardware, que combinado con su paralelismo implícito hace del sistema reconfigurable una potente herramienta que puede dar pie a la creación de sistemas adaptables o incluso autoadaptativos, supercomputadores reconfigurables y hardware bio-inspirado entre otros. Por otro lado, a pesar que algunos proveedores de FPGAs permiten la reconfiguración parcial, el uso de esta técnica aún está restringido al ámbito académico y a sistemas muy básicos. El trabajo de investigación descrito dentro de la presente tesis doctoral ha tenido por objeto el estudio de diversos aspectos de los sistemas parcialmente reconfigurables, la identificación de las principales deficiencias de las soluciones existentes y la propuesta de nuevas soluciones originales. Como resultado del estudio del estado del arte se ha visto que las soluciones existentes son poco flexibles y la escalabilidad de los sistemas que se pueden diseñar es reducida. Por ello las propuestas originales de esta tesis tienen como objetivo permitir el diseño e implementación de sistemas parcialmente reconfigurables con alta escalabilidad y flexibilidad. La tesis principal del trabajo de investigación ha sido basada en la idea que para obtener una mayor flexibilidad de los sistemas se debe desligar el diseño del sistema reconfigurable del diseño de los cores que serán consumidos por dicho sistema. La tesis doctoral ha contribuido proponiendo mejores soluciones a nivel de arquitectura, flujos de diseño y herramientas que han permitido el diseño e implementación de diversos sistemas parcialmente reconfigurables con distinto grado de flexibilidad y escalabilidad. La flexibilidad y la escalabilidad son términos que en los sistemas reconfigurables se pueden asociar a diversos aspectos. Dentro de esta tesis la flexibilidad está asociada principalmente a la diversidad de cores o tareas hardware que pueden ser consumidos o integrados en un sistema ya definido, mientras que la escalabilidad está referida al número de cores que pueden coexistir en el sistema y ser reconfigurados independientemente. Para poder diseñar sistemas flexibles y escalables, estas características deben estar cubiertas en distintos niveles. Más en detalle dentro de la presente tesis, desde el punto de vista de la arquitectura, la flexibilidad está cubierta por la posibilidad de posicionar libremente cores en una arquitectura escalable predefinida. Desde el punto de vista del sistema, la flexibilidad está reflejada por la posibilidad de no sólo de modificar o reconfigurar un core del sistema hardware, sino también de modificar las comunicaciones internas del mismo. Desde el punto de vista del dispositivo, la flexibilidad está garantizada por la transparencia en el proceso de reconfiguración. Por último, la flexibilidad en el proceso de diseño está cubierta por la definición de herramientas y flujos de diseño que permiten por un lado desligar el diseño del sistema reconfigurable del diseño de los cores para el sistema, y por otro lado que diseñadores sin conocimientos detallados de reconfiguración parcial puedan diseñar cores. Dentro de la tesis doctoral se presentan cuatro dispositivos reconfigurable integrados en distintos entornos y con distinto grado de flexibilidad que corresponde al grado de aprovechamiento de las aportaciones originales de la tesis. Las principales aportaciones de la tesis doctoral, relacionadas a cada uno de los aspectos mencionados en el párrafo anterior, y tratados en distintas partes de la tesis se resumen a continuación destacando en la medida de lo posible las diferencias con respecto al estado del arte: Se ha definido una metodología de diseño de Arquitecturas Virtuales (abstracción de la arquitectura física de la FPGA que incluye la distribución de los recursos programables en slots y la forma de interconexión de los slots). La metodología, propuesta originalmente en esta tesis, permite el diseño de sistemas reconfigurables con alta flexibilidad y escalabilidad comparadas con el estado del arte. Una solución a la adaptación de las comunicaciones internas en los sistemas reconfigurables llamada DRNoC (Dynamic Reconfigurable NoC). La solución original abarca diversos aspectos e incluye la definición de una arquitectura de interconexión para los sistemas reconfigurables basada en redes en chip (Network on Chip - NoC), la definición de métodos de reconfiguración y el direccionamiento interno del sistema, y de forma más específica para las comunicaciones basadas en redes, la definición de un formato de tramas y la arquitectura de los enrutadores. La principal diferencia de la solución propuesta con el estado del arte es que DRNoC no restringe la comunicación únicamente a NoCs y permite la definición de cualquier tipo de esquema de comunicación (NoC, punto a punto, punto a multipunto, bus, o una combinación de las anteriores) y además, permite que varios esquemas de comunicación coexistan en el mismo sistema y que funcionen de forma independiente. De esta forma la solución propuesta brinda una mayor flexibilidad que las ya existentes. Se ha propuesto una solución para la manipulación de los ficheros de configuración para las FPGA del tipo Virtex II/Pro que es la más completa comparada con el estado del arte. Asimismo, una serie de herramientas que permiten la generación y extracción de cores para sistemas reconfigurables basados en FPGA Virtex II que ha sido la primera solución existente para estas FPGA. Un flujo de diseño para cores basado en plantillas que permite el diseño de cores hardware sin ser un experto en reconfiguración parcial y sin conocer los detalles del sistema final en el que se implementará el core. El diseño, implementación y prueba de un sistema parcialmente reconfigurable basado en FPGAs comerciales de grano fino para redes de sensores. La primera aproximación existente en el estado del arte al uso de los sistemas parcialmente reconfigurables en las redes de sensores. La integración de un sistema reconfigurable en un entorno cliente-servidor que incluye un original sistema de control de la reconfiguración. Una solución para la depuración de los sistemas reconfigurables. Un sistema de emulación y prototipado rápido de las comunicaciones dentro de un chip basado originalmente en la idea de la reutilización de cores hardware por medio de la técnica de reconfiguración parcial. Como conclusión global del trabajo de investigación realizado cabe destacar que la presente tesis ha dado lugar a la creación y consolidación de una línea de investigación en el grupo de electrónica digital del Centro de Electrónica Industrial que actualmente se encuentra entre las más activas y de mayor importancia. Además, el trabajo de investigación y la divulgación de las aportaciones originales han permitido que el centro de investigación pase a formar parte del estado del arte de los sistemas parcialmente reconfigurables. udududThe thesis is enclosed in the research area of reconfigurable computing which, in the last years, has experienced a remarkable growth as a result of the impressive evolution of reconfigurable devices. In this area, Field Programmable Gate Arrays (FPGAs) are the most outstanding representative from the commercial point of view. Traditionally FPGAs have been used for prototyping, in previous to the final Application Specific Integrated Circuit (ASIC) design stages. However, the interest in the integration of FPGAs in final products has been growing in the last years. FPGAs are preferred for small production volumes, where the ASIC masks high cost is unaffordable and also in products where time-to-market is a priority, and waiting for a complete ASIC design cycle is not desirable. State of the art FPGAs are highly integrated electronic circuits, composed of tens of millions of system gates, with competitive speed, performance and configurability. These devices have evolved from simple gate arrays to complex platforms that include embedded memory, multipliers and even microprocessors and digital signal processing elements. Additionally, the fine grain nature of the reconfigurable arrays, make FPGAs suitable for a broad set of application domains. On the other side, and mostly in the academic community, there are custom reconfigurable devices with different granularity levels that permit to achieve higher performance, compared to commercial FPGAs, but for a certain application domain. Although there are very good solutions in the academic state of the art, their main drawback from the industry point of view is that they require specific design environments and also, that the efforts and resources needed for designing such solutions are very high. This thesis work is focused on providing solutions that target commercial fine grain reconfigurable devices, FPGAs, in order to take advantage of existing tools and to keep the proposed solutions closer to the industry. Today FPGAs provide different reconfiguration options. Among them, the most challenging one is partial reconfiguration. This feature has special interest, as it permits system updates on the fly once the device is deployed, without the need of stopping it and without theoretical loss of performance. Partial reconfiguration is also an attractive feature because it permits to allocate different tasks/cores running in parallel in the device and change them on the fly as needed without disturbing other tasks/cores. This basic idea, brings software-like flexibility to hardware which, in combination with its inherited parallelism, opens the door for a broad amount of possibilities and applications, like runtime adaptive super-computing, adaptive embedded software ii accelerators, bio-inspired, self-reconfigurable and self-arrangeable systems. However, even though some commercial FPGAs provide partial reconfiguration features, its utilization is still in its early stages and it is not well supported by FPGA vendors, making its exploitation in real electronic systems very difficult. Therefore, there are several academic groups working to provide alternative solutions for the design and implementation of partially reconfigurable systems based on commercial FPGAs that intend to stimulate their integration and use in the industry. This research work intents to study different aspects of partially reconfigurable system on-chip and contribute with flexibility improvements. The main idea that will be followed along the thesis is that the design of reconfigurable systems will be considered an independent process from the design of cores that will be consumed by the system. This approach involves the design of flexible and scalable partial runtime reconfigurable systems, where most of the thesis contribution will be focused. More in detail, this thesis will contribute to improve architecture solutions, design tools and design flows of partially reconfigurable systems for commercial FPGAs and provide systems with higher flexibility and scalability. Flexibility and scalability in a reconfigurable system are terms that can be related to several aspects. In this thesis flexibility is mainly related to the diversity of tasks or cores a system can consume, while scalability is connected to the number of cores that can run in parallel and be independently reconfigured. Flexibility and scalability have to be covered by the system at different levels and the work presented in this thesis will contribute in all the specific levels. More in detail, from an architectural point of view, flexibility is reflected by the possibility of freely loading tasks or cores in a defined, scalable architecture. From the system point of view, flexibility is related to the possibility of modifying not only the system functionality by loading different tasks, but also to adapt the on-chip communications. From the device point of view, flexibility is reflected by the reconfiguration process transparency and, from the design point of view, it is oriented to the definition of design tools and flows that will permit, as far as possible, non specialized designers to design cores for a partially reconfigurable system and without knowing the system details. All the original proposed solutions, in each individual aspect, will be compared with the state of the art and complete systems solutions will be designed and will be integrated in different application domains in order to validate the thesis proposals. In order to achieve better understanding of the thesis and to facilitate the comparison with some, selected, related work, the thesis structure is not traditional. Instead of including a state of the art and a result Chapter, each Chapter is focused on a specific aspect of partially reconfigurable system design and includes state of the art and result sections. The first chapter, Chapter 1, introduces the main concepts to be used in the thesis. Chapter 2 is focused on reconfigurable systems architectures, contributing with architecture solutions and a design method. Chapter 3 proposes a solution that enhances the features of the architectures defined in Chapter 2, and provides more flexibility to the entire system by extending reconfiguration to the on-chip communication. Chapter 4 is related to the design flows and tools, where contributions are made in both aspects and the proposed solutions are compared with the state of the Abstract and Thesis Organization iii art. Complete systems, with different independency levels, are presented in Chapter 5 in order to validate the thesis contributions. Conclusions, a summary of contributions and the future work are included in Chapter 6. A more detailed description of each Chapter content is presented below: Chapter 1 provides an introduction to the reconfigurable systems based on FPGAs topic, by first defining the place of FPGAs in the electronic industry and afterwards, introducing the main concepts to be used along the thesis. Although the focus is put on commercial reconfigurable devices, some custom reconfigurable systems are also described in order to have a complete view of the options in reconfigurable devices. The Chapter discuses the thesis main topic, related to partial runtime reconfigurable systems, highlighting its main advantages and disadvantages and, introducing some of the approaches to be followed in this thesis. The main term introduced in this Chapter, associated to reconfigurable systems architectures, is ”Virtual Architecture”. The term defines the architecture of the partially reconfigurable system and how the different regions it is composed of are interconnected. A brief summary of the thesis main goals is included at the end of the Chapter. The main topic of Chapter 2 is related to reconfigurable systems architectures design. The Chapter includes a specific state of the art section that reviews some existing architecture solutions. After that, a general method for virtual architectures design, an original thesis contribution, is presented in detail. Afterwards, the method is applied to the design of general one dimensional (1D) and two dimensional (2D) architectures for Xilinx Virtex II/Pro FPGAs and, as an example, following the specific steps of the method, two 1D, bus based, architectures are designed. The architecture buses are compared with two state of the art solutions in terms of area and performance in the results section of the same Chapter. Chapter 3 is focused on reconfigurable systems on-chip communication issues, where the need of adaptability is the main topic. Again, a state of the art description of some 2D reconfigurable systems is presented at the beginning of the Chapter and, afterwards, an original solution, called Dynamic Reconfigurable NoC (DRNoC), is proposed. This solution covers different aspects. First, an architecture oriented to support adaptability in the on-chip communications is originally proposed. The architecture is mapped to a Virtex II FPGA by modifying a virtual architecture from the general ones presented in Chapter 2. Second, two types of reconfigurations that span through different levels of the OSI communication model are originally proposed. Third, a set of Network on Chip models, focused on the communication adaptability are designed and/or adapted and presented in the Chapter, along with an original NoC packet format and router architecture. These models are mapped to the DRNoC architecture and implementation cost parameters are defined and used to evaluate different implementation options. Regarding the architecture reconfigurability, it is important to remark that along the entire Chapter, intermediate test of possible partial reconfigurations and test results are included. At the end of the Chapter, the proposed architecture is compared with the state of the art using a set of structural parameters taken from a reference work and complemented with others defined in the Chapter. Chapter 4, focuses on the design tools and flows for partially reconfigurable systems. Again, an overview of the state of the art is included at the beginning of the Chapter. Abstract and Thesis Organization iv Afterwards, an original software solution for Virtex II configuration files (bitstreams) manipulations is presented. The first part of the solution is a study of the Virtex II/Pro FPGA bitstream format, used to define a set of equations for accessing a specific bitstream resource (at register or block level). Based on these equations, a set of tools for bitstream manipulation that target resource restricted devices are originally presented. Also, a design flow, based on systems and virtual architectures templates, which permits a straightforward core design by non partial reconfiguration experts and without knowing the system details, is originally proposed. In Chapter 5 four reconfigurable systems with different flexibility level, which corresponds to the level of the thesis proposals exploitation, are presented. The selected application domains attempt to demonstrate different advantages of the use of partial runtime reconfigurable systems and therefore are mainly a proof of concept. The first domain belongs to the wireless sensor networks, where the possibility of sending new device configurations to a remote node is evaluated. As far we are concern this is the first time a reconfigurable system is used in this application domain. The second, more sophisticated application is a reconfigurable device integration, in an original way, in a client-server environment, where new device updates are transparently loaded. The third one is an extension of the client-server system in order to support the insertion of debug modules through partial reconfiguration and, the last one is an, originally proposed, on-chip communication emulation framework, where cores reusability is exploited through partial reconfiguration. Chapter 6 includes the thesis general conclusions and future work. The Chapter, also, answers to some main questions that appeared along the thesis and tries to evaluate the thesis contributions, which are summarized in the same Chapter.
机译:本博士论文的框架是可重构计算研究领域。近年来,由于可重构设备的发展,该领域经历了压倒性的增长,从商业角度来看,现场可编程门阵列(FPGA)是最大的代表。传统上,电子公司选择FPGA作为高性能产品的初始原型。然后将最终系统集成到大批量生产的专用集成电路(ASIC)中,从而分摊其设计和生产的高成本,并利用单位成本的低廉优势。另一方面,DSP(数字信号处理)和微处理器因其低成本而比FPGA(具有较低计算要求的设备领域)更受青睐。近年来,这种全景正在发生一系列变化。现在,市场正在寻找更多“可重构”的解决方案,因为它们可以缩短产品上市时间(上市时间),增加产品上市时间(上市时间),并满足广泛的需求计算。观察到的变化是由于可编程设备已从简单的可编程结构演变为复杂的可重新配置平台这一事实所致。现有技术的FPGA已经达到了很高的集成度,并且在其可编程体系结构中现在还包含微处理器和用于数字信号处理的特定逻辑。发生变化的另一个极其重要的因素是,一旦产品已经交付并安装,FPGA便允许设计其硬件可以修改或更新的设备,从而获得与软件相当的硬件灵活性。系统的售后更新是一种被广泛使用的做法,目的是降低成本并迅速推向市场。另一方面,特别是在学术领域,存在与商业细粒度FPGA(与ASIC相比)具有不同粒度的可重配置设备,这些设备可以实现高性能,但它们仅限于以下应用或一组应用程序。尽管专有的可重配置器件具有许多优点,但在本论文中已排除了该选项,因为从工业角度来看,除了可重配置ASIC设计之外,它们还需要开发完整的设计环境。所有这些都导致了高昂的资源成本,而且背离了行业建议。本文的重点是为商用设备,细粒度FPGA提供解决方案,以利用现有工具并尽可能使所提出的解决方案与行业保持紧密联系。可重配置设备提供了多种重配置方法,其中最有吸引力的是部分重新配置和动态重配置,因为它允许在不中断其操作的情况下对设备进行适配并创建自适应设备。这种类型的重构将是博士学位论文的研究对象。部分重配置允许在系统中并行运行一系列硬件任务(位于可重配置结构中的模块),并根据系统的需要将一个模块替换为另一个模块,而无需更改其余模块的操作。理论上的这一基本思想为软件提供了硬件灵活性,再加上其隐含的并行性,使可重配置系统成为功能强大的工具,可以导致创建适应性甚至自适应的系统,可重配置的超级计算机和具有生物启发性的硬件等。另一方面,尽管事实是某些FPGA的提供程序允许部分重新配置,但是该技术的使用仍然仅限于学术领域和非常基础的系统。本博士论文中描述的研究工作旨在研究部分可重构系统的各个方面,确定现有解决方案的主要缺陷以及提出新的原始解决方案的建议。作为对现有技术的研究的结果,已经看到,现有的解决方案不是非常灵活,并且可以设计的系统的可扩展性降低了。因此,本论文的原始建议旨在允许设计和实现具有高度可扩展性和灵活性的部分可重配置系统。研究工作的主要论据是基于这样的思想,即为了获得更大的系统灵活性,可重构系统的设计必须与所述系统将要使用的核心的设计分开。博士论文的提出是通过在体系结构级别,设计流程和工具方面提出更好的解决方案做出的贡献,这些解决方案允许设计和实现具有不同程度的灵活性和可伸缩性的各种部分可重新配置的系统。灵活性和可伸缩性是可重配置系统中可以与各个方面关联的术语。在本文中,灵活性主要与可以使用或集成到已定义的系统中的内核或硬件任务的多样性相关,而可伸缩性是指可以共存于系统中并独立重新配置的内核数量。为了设计灵活且可扩展的系统,必须在不同级别上涵盖这些特征。在本论文中,从体系结构的角度更详细地讲,灵活性被自由地放置在预定义的可扩展体系结构中的内核所覆盖。从系统的角度来看,灵活性不仅体现在修改或重新配置硬件系统核心,还可以修改其内部通信方面。从设备的角度来看,重新配置过程的透明性确保了灵活性。最后,设计工具和流程的定义涵盖了设计过程中的灵活性,这些工具和流程一方面允许将可重新配置的系统设计与系统核心的设计区分开,另一方面允许没有详细知识的设计人员。部分重新配置可以设计核心。在博士论文中,提出了四种可重新配置的设备,它们集成在不同的环境中并具有不同的灵活性,对应于论文原始贡献的使用程度。博士论文的主要贡献与上段提到的每个方面有关,并在论文的不同部分进行了概述,以下尽可能强调与现有技术的区别:已经为虚拟架构定义了一种设计方法(FPGA的物理架构的抽象,其中包括插槽中可编程资源的分配以及插槽互连的形式)。与现有技术相比,本文最初提出的方法论允许设计具有高度灵活性和可扩展性的可重配置系统。一种用于在可重配置系统中适应内部通信的解决方案,称为DRNoC(动态可重配置NoC)。原始解决方案涵盖多个方面,其中包括基于片上网络(Network on Chip-NoC)的可重配置系统的互连体系结构的定义,重配置方法的定义和系统的内部寻址。用于基于网络的通信,定义帧格式和路由器体系结构。与现有技术相比,DRNoC的主要区别在于DRNoC不仅将通信限制为NoC,还允许定义任何类型的通信方案(NoC,点对点,点对多点,总线或以下几种的组合)以上),还允许各种通信方案在同一系统中共存并独立运行。这样,提出的解决方案提供了比现有解决方案更大的灵活性。已经为Virtex II / Pro FPGA提出了一种用于操纵配置文件的解决方案,该解决方案与现有技术相比是最完整的。同样地,这是一系列工具,可用于为基于FPGA Virtex II的可重配置系统生成和提取内核,这是这些FPGA的第一个现有解决方案。基于模板的核心设计流程,无需进行部分重新配置的专家,也无需了解将在其中实现核心的最终系统的细节,即可进行硬件核心的设计。基于用于传感器网络的商业细粒度FPGA的部分可重配置系统的设计,实现和测试。现有技术中在传感器网络中使用部分可重新配置的系统的第一种现有方法。可重配置系统在包括原始重配置控制系统的客户端-服务器环境中的集成。调试可重配置系统的解决方案。一种基于芯片内部通信仿真和快速原型制作的系统,最初基于使用部分重新配置技术重用硬件内核的思想。作为进行的研究工作的全球结论,应该指出的是,本论文导致了工业电子中心的数字电子小组中一系列研究的创建和合并,该小组目前是最活跃和最重要的研究中心。 。此外,研究工作和原始贡献的传播使研究中心成为部分可重配置系统的最新技术。本文围绕可重构计算的研究领域进行了研究,近年来,由于可重构设备的惊人发展,该领域经历了显着增长。从商业角度来看,现场可编程门阵列(FPGA)是这一领域最杰出的代表。在最终的专用集成电路(ASIC)设计阶段之前,传统上将FPGA用于原型制作。但是,近年来,人们对在最终产品中集成FPGA的兴趣不断增长。 FPGA适用于小批量生产,在这种情况下ASIC无法掩盖高成本,而在优先考虑上市时间且不希望等待完整的ASIC设计周期的产品中,则首选FPGA。最先进的FPGA是高度集成的电子电路,由数以千万计的系统门组成,具有极高的速度,性能和可配置性。这些设备已经从简单的门阵列发展到包括嵌入式存储器,乘法器甚至微处理器和数字信号处理元件在内的复杂平台。此外,可重配置阵列的精细特性使FPGA适用于广泛的应用领域。另一方面,并​​且在学术界中,主要是具有不同粒度级别的自定义可重配置设备,与商用FPGA相比,在特定的应用领域,可以实现更高的性能。尽管在现有技术水平上有非常好的解决方案,但是从行业角度来看,它们的主要缺点是它们需要特定的设计环境,并且设计此类解决方案所需的工作和资源非常高。本文的工作重点是提供针对商用细晶粒可重构器件FPGA的解决方案,以便利用现有工具并使所提出​​的解决方案更接近行业。如今,FPGA提供了不同的重新配置选项。其中,最具挑战性的是部分重新配置。此功能具有特别的意义,因为它允许在设备部署后立即进行系统更新,而无需停止它,也不会在理论上降低性能。部分重配置也是一个吸引人的功能,因为它允许分配在设备中并行运行的不同任务/核心,并根据需要即时更改它们,而不会干扰其他任务/核心。这一基本思想为硬件带来了类似于软件的灵活性,并结合了其继承的并行性,为各种可能性和应用打开了大门,例如运行时自适应超级计算,自适应嵌入式软件ii加速器,生物启发的自我-可重新配置和可自我安排的系统。但是,即使某些商用FPGA提供了部分重新配置功能,其使用仍处于早期阶段,FPGA供应商还没有很好地支持它,这使其在实际电子系统中的开发非常困难。因此,有多个学术团体致力于为基于商业FPGA的部分可重配置系统的设计和实现提供替代解决方案,以刺激其在业界的集成和使用。这项研究工作旨在研究部分可重配置片上系统的不同方面,并有助于提高灵活性。本文所遵循的主要思想是,可重配置系统的设计将被视为与系统消耗的内核设计无关的过程。这种方法涉及灵活和可扩展的部分运行时可重配置系统的设计,其中大部分论文将集中于此。更详细地讲,本论文将有助于改进商用FPGA的部分可重配置系统的体系结构解决方案,设计工具和设计流程,并为系统提供更高的灵活性和可扩展性。可重配置系统中的灵活性和可伸缩性是可以与多个方面相关的术语。在本文中,灵活性主要与系统可以消耗的任务或内核的多样性有关,而可伸缩性与可以并行运行并独立重新配置的内核数量有关。系统必须在不同级别上涵盖灵活性和可伸缩性,本文所介绍的工作将在所有特定级别上做出贡献。从体系结构的角度更详细地讲,灵活性可以通过在定义的可伸缩体系结构中自由加载任务或核心的可能性来体现。从系统的角度来看,灵活性不仅涉及通过加载不同任务来修改系统功能,而且还可以适应片上通信的可能性。从设备的角度来看,灵活性由重新配置过程的透明性反映出来;从设计的角度来看,灵活性则是针对设计工具和流程的定义,这将允许非专业设计人员尽可能地设计核心适用于部分可重新配置的系统,而无需了解系统详细信息。在各个方面,所有最初提出的解决方案都将与现有技术进行比较,并将设计完整的系统解决方案,并将其集成到不同的应用领域中,以验证论文的提议。为了更好地理解论文并促进与某些相关工作的比较,论文结构不是传统的。每个章节都没有重点介绍现有技术和结果章节,而是着重介绍了部分可重配置系统设计的特定方面,并包括了最新技术和结果部分。第一章为第一章,介绍了论文中要使用的主要概念。第2章重点介绍可重新配置的系统架构,并介绍架构解决方案和设计方法。第3章提出了一种解决方案,该解决方案增强了第2章中定义的体系结构的功能,并通过将重新配置扩展到片上通信来为整个系统提供更大的灵活性。第4章涉及设计流程和工具,在这两个方面都做出了贡献,并将提出的解决方案与摘要和论文组织的现状进行了比较。第5章介绍了具有不同独立性级别的完整系统,以验证论文的贡献。结论,贡献摘要和未来的工作包含在第6章中。下面对各章的内容进行了更详细的描述:第1章首先定义了FPGA在FPGA中的位置,从而对基于FPGA的可重配置系统进行了介绍。电子行业,然后介绍在论文中使用的主要概念。尽管重点放在商用可重配置设备上,但也描述了一些自定义可重配置系统,以便对可重配置设备中的选项有完整的了解。本章讨论了与部分运行时可重配置系统有关的论文主题,突出了其主要优点和缺点,并介绍了本文应遵循的一些方法。本章介绍的与可重配置系统架构相关的主要术语是“虚拟架构”。该术语定义了部分可重配置系统的体系结构以及组成该系统的不同区域之间的互连方式。本章末尾简要概述了论文的主要目标。第2章的主要主题与可重配置系统架构设计有关。本章包括一个特定的最新技术部分,它回顾了一些现有的体系结构解决方案。之后,详细介绍了虚拟架构设计的一般方法,即论文的原创性贡献。然后,该方法适用于Xilinx Virtex II / Pro FPGA的通用一维(1D)和二维(2D)架构的设计,并以该方法的特定步骤为例,介绍了两种基于总线的1D架构被设计。在同一章的结果部分中,将体系结构总线与两种最新解决方案进行了面积和性能方面的比较。第3章重点讨论可重构系统的片上通信问题,其中适应性的需求是主要主题。同样,在本章的开头介绍了一些2D可重配置系统的最新技术描述,此后,提出了一种称为动态可重配置NoC(DRNoC)的原始解决方案。该解决方案涵盖了不同方面。首先,最初提出了一种旨在支持片上通信的适应性的体系结构。通过修改第2章介绍的常规虚拟架构,将该架构映射到Virtex II FPGA。第二,最初提出了两种跨越OSI通信模型不同级别的重新配置类型。第三,在本章中设计和/或调整并介绍了一组专注于通信适应性的网络芯片模型,以及原始的NoC数据包格式和路由器体系结构。这些模型被映射到DRNoC体系结构,并且定义了实现成本参数,并用于评估不同的实现选项。关于体系结构可重配置性,重要的是要指出,在整章中,都包括对可能的部分重配置和测试结果的中间测试。在本章的最后,使用从参考著作中获取并与本章定义的其他结构参数相辅相成的一组结构参数,将提议的体系结构与现有技术进行了比较。第4章重点介绍部分可重配置系统的设计工具和流程。同样,在本章的开头还概述了现有技术。 iv随后,提出了针对Virtex II配置文件(位流)操作的原始软件解决方案。解决方案的第一部分是研究Virtex II / Pro FPGA比特流格式,该格式用于定义一组方程式,以访问特定的比特流资源(在寄存器或块级别)。基于这些方程式,最初提供了一组针对比特流操作的工具,这些工具针对资源受限的设备。此外,最初提出了一种基于系统和虚拟体系结构模板的设计流程,该流程允许非部分重新配置专家进行直接的核心设计,而无需了解系统细节。在第5章中,提出了四种具有不同灵活性级别的可重构系统,它们与论文提案的开发水平相对应。所选的应用程序域试图展示使用部分运行时可重配置系统的不同优点,因此主要是概念证明。第一个域属于无线传感器网络,其中评估了将新设备配置发送到远程节点的可能性。到目前为止,我们担心这是在此应用程序域中首次使用可重配置系统。第二个更复杂的应用程序是以原始方式在客户端-服务器环境中可重新配置的设备集成,在该客户端-服务器环境中透明地加载了新的设备更新。第三个是客户端-服务器系统的扩展,以支持通过部分重新配置来插入调试模块,最后一个是最初提出的片上通信仿真框架,其中通过部分重新配置来利用内核的可重用性。 。第六章包括论文的一般结论和今后的工作。本章还回答了论文中出现的一些主要问题,并试图评估论文的贡献,这些都在同一章中进行了概述。

著录项

  • 作者

    Esteves Krasteva Yana;

  • 作者单位
  • 年度 2009
  • 总页数
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 入库时间 2022-08-20 20:28:29

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号