{"title":"可编程逻辑器件数据并行算法的综合","authors":"I. Damaj","doi":"10.1109/ICCRD.2010.65","DOIUrl":null,"url":null,"abstract":"Behavioral high-level hardware design tools are currently considered powerful and can largely facilitate the hardware development cycle as a whole. Modern hardware design tools can target high-density programmable logic devices, such as, Field Programmable Gate Arrays. Currently, hardware/software co-design is witnessing a growing focus on finding alternative methods that could further improve the design process. In this paper, we explore the effectiveness and extend a formal methodology for hardware design. The method adopts a a step-wise refinement approach that starts development from formal specifications. A functional programming notation is used for specifying algorithms and for reasoning about them. The method is aided by off-the-shelf refinements based on the operators of Communicating Sequential Processes that map easily to programs written in Handel-C. Handel-C descriptions are directly compiled into reconfigurable hardware. The practical realization of this methodology is evidenced by a case studying data-parallel implementations of a matrix multiplication algorithm. The developed designs are compiled and tested under Agility's RC-1000 reconfigurable computer with its 2 million gates Virtex-E FPGA. Performance analysis and evaluation of the presented implementations are included.","PeriodicalId":158568,"journal":{"name":"2010 Second International Conference on Computer Research and Development","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-05-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Synthesis of Data-Parallel Algorithms for Programmable Logic Devices\",\"authors\":\"I. Damaj\",\"doi\":\"10.1109/ICCRD.2010.65\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Behavioral high-level hardware design tools are currently considered powerful and can largely facilitate the hardware development cycle as a whole. Modern hardware design tools can target high-density programmable logic devices, such as, Field Programmable Gate Arrays. Currently, hardware/software co-design is witnessing a growing focus on finding alternative methods that could further improve the design process. In this paper, we explore the effectiveness and extend a formal methodology for hardware design. The method adopts a a step-wise refinement approach that starts development from formal specifications. A functional programming notation is used for specifying algorithms and for reasoning about them. The method is aided by off-the-shelf refinements based on the operators of Communicating Sequential Processes that map easily to programs written in Handel-C. Handel-C descriptions are directly compiled into reconfigurable hardware. The practical realization of this methodology is evidenced by a case studying data-parallel implementations of a matrix multiplication algorithm. The developed designs are compiled and tested under Agility's RC-1000 reconfigurable computer with its 2 million gates Virtex-E FPGA. Performance analysis and evaluation of the presented implementations are included.\",\"PeriodicalId\":158568,\"journal\":{\"name\":\"2010 Second International Conference on Computer Research and Development\",\"volume\":\"18 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2010-05-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2010 Second International Conference on Computer Research and Development\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICCRD.2010.65\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 Second International Conference on Computer Research and Development","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCRD.2010.65","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Synthesis of Data-Parallel Algorithms for Programmable Logic Devices
Behavioral high-level hardware design tools are currently considered powerful and can largely facilitate the hardware development cycle as a whole. Modern hardware design tools can target high-density programmable logic devices, such as, Field Programmable Gate Arrays. Currently, hardware/software co-design is witnessing a growing focus on finding alternative methods that could further improve the design process. In this paper, we explore the effectiveness and extend a formal methodology for hardware design. The method adopts a a step-wise refinement approach that starts development from formal specifications. A functional programming notation is used for specifying algorithms and for reasoning about them. The method is aided by off-the-shelf refinements based on the operators of Communicating Sequential Processes that map easily to programs written in Handel-C. Handel-C descriptions are directly compiled into reconfigurable hardware. The practical realization of this methodology is evidenced by a case studying data-parallel implementations of a matrix multiplication algorithm. The developed designs are compiled and tested under Agility's RC-1000 reconfigurable computer with its 2 million gates Virtex-E FPGA. Performance analysis and evaluation of the presented implementations are included.