用户名: 密码: 验证码:
可重构多核片上系统软硬件协同优化算法研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
可重构技术综合通用和定制两类计算的优势,提供灵活高效的运算性能。多核片上系统在单芯片中集成多种功能单元,满足多样化应用需求。两者相结合的可重构多核片上系统兼顾计算灵活性与运行效率,发挥多核计算的资源优势,利用硬件可编程性,有效满足嵌入式领域不同的应用需求。
     上述系统在设计和应用中亦存在不少挑战。应用的灵活性和内核的多态性很难构建归一化的抽象模型;硬件加速的高效性会带来划分、调度及分配等一系列普遍认为或已被证明是NP完全或NP难的问题;资源的分时复用特性增加了管理、布局、碎片等多约束条件。因此,可重构及多核片上系统协同优化算法的研究在提升系统运算性能、增强应用可靠性等方面具有必要的现实意义。
     本文针对可重构及多核片上系统软硬件协同应用,以优化计算性能为主要目标开展研究。首先抽象多核片上系统和可重构多核片上系统的基础框架,归纳影响系统性能提升的主要约束因素。其次结合国内外研究现状,给出相应的软硬件协同算法。最后分析算法的时空复杂度及性能优化效果。
     本文主要工作和特色如下:
     (1)在分析国内外典型多核片上系统和可重构多核片上系统的基础上,结合多态计算及下一代通用处理器特征,构建出一体的系统框架结构。同时结合输入任务类型、主要制约因素及性能提升目标,抽象一致的约束条件和优化模型。
     (2)针对多核片上系统软硬件协同优化,在分析影响其运算性能的任务间依赖关系、通信代价及处理器分配等约束的基础上,提出贪心划分插入调度的GPISM算法。该算法借助于贪心划分策略,选取关键硬件路径和最长软件通路;依据系统的约束条件和优化目标,将余下零散任务插入到对应的处理器核中调度执行。GPISM算法具有多项式时间的复杂度和较小的空间开销。
     (3)针对可重构技术硬件分时复用的特点,在分析影响系统性能和资源利用率的布局管理、放置方式及碎片度量等约束的基础上,提出VHF硬件布局管理策略。该策略包括:节省存储开销的顶点位置树VPT数据结构;减少时间开销的高权重占角优先HWC布局方式及灵巧的跳步搜索方法;降低计算成本的碎片外形边FSE度量函数。在此基础上衍生出针对永久故障的FT-VHF容错管理策略。本文所提出的硬件布局管理及容错策略以较低的时空复杂度达到高效的资源利用率和低成本的系统可靠性。
     (4)针对在线型和离线型任务特征,在分析可重构多核片上系统协同优化中受截止期限、任务依赖性等约束的基础上,提出VHF-Online和VHF-Offline两类任务调度算法,结合VHF硬件资源管理策略,实现软硬件的协同优化。其中,VHF-Online算法以贪心的队列调度和动态的时间管理,获得较高的任务接受率;VHF-Offline算法借助循环迭代消除任务间相关性,赋予任务不同的软硬件执行优先级,综合动态划分、布局判定、优先调度等协同策略实现较短的调度总长度。
Reconfigurable Computing (RC) technology, integrates the advantages of both general and custom computing, providing flexible and efficient computing ability. Multi Processor System on Chip (MPSoC), which integrates many function units on the single chip, meets diverse application requirements. RC-MPSoC, a combination of above has computing flexibility and operation efficiency, which makes full use of multi-core computing resources advantages; using hardware programmability, more effectively meets the demand of different embedded applications.
     The above systems also face many challenges in the design and application field. The flexibility of application and the kernel polymorphism are very difficult to construct the normalized abstraction model; the partitioning, scheduling, and assignment, which brought by the efficiency of hardware acceleration, have been generally considered or proved as a NP-Complete or NP-Hard problem; the feature of reconfigurable resources time-sharing multiplexing add many constraint conditions of management, placement and fragment. So, the research on the codesign optimization algorithm of RC with MPSoC is very significant in the fields of improving system operation performance, enhancing application reliability, and so on.
     This dissertation mainly focuses on the RC with MPSoC software/hardware codesign application. The object is to optimize computing performance. First, abstract the basic frame structure of MPSoC and RC-MPSoC, and conclude the critical factors which affected the improvement of system performance. Second, with the research status both home and abroad, the corresponding optimization algorithms were given progressively. Last, the space/time complexity of algorithms and the effect on the system performance improvement were analyzed.
     The main work and features embodied in the following aspects:
     1. On the foundation of analyzing two state-of-the-art systems platforms of MPSoC and RC-MPSoC both home and abroad, the basic unify frame structure was built, combing with polymorphism calculation and the characters of next generation general processor platform. At the same time, considering the input task type on the platform, major limitation factors and performance improvement objectives, consistent constraint conditions and optimization model was abstracted.
     2. For software/hardware codesign optimization of MPSoC, based on the analyzing of tasks dependencies, communication cost, processor allocation and other restrictions, we put forward greedy partitioning and insert scheduling (GPISM) codesign optimization algorithm. By using greedy partitioning, the critical hardware path and longest software path were selected; On the basis of system constraints and optimization objects, the rest scattered tasks were inserted into the corresponding processor cores. The time complexity of algorithm is polynomial level, with smaller space overhead.
     3. For time-sharing multiplexing character of Reconfigurable Computing, based on the analyzing of the restrictions of resource management, placement manner and the fragments measuring, which effected system performance and resource utilization and so on, The VHF hardware placement and management strategy was put forward. The strategy included:the VPT (Vertex Positions Tree) data structure, which reduced storage costs; the HWC (High Weight Corner occupied first) placement manner and clever jump search methods, which reduced the computing time overhead; the FSE (Fragment Shape Edge) measure function, which reduced the computation cost. To solve the effection of permanent fault, the FT-VHF fault tolerant strategy had also been put forward based on the above. Both the VHF and FT-VHF strategies achieved effective resource utilization and low-cost system reliability with lower complexity of time and space.
     4. For the online and offline task characteristics, the two task scheduling algorithms VHF-Online and VHF-Offline had been put forward, on the basis of analyzing the restrictions of deadline, task dependencies etc. in RC-MPSoC codesign optimization. Combined with the VHF hardware resource management and placement strategy, the above two scheduling algorithms achieved the software/hardware codesign optimization. Using greedy queue scheduling and dynamic priority updating, the VHF-Online algorithm achieved higher rate of tasks acceptance; Eliminating task dependencies with loop iteration, giving the different task hardware/software execution priorities, integrating dynamic partitioning, placement judgment and priority scheduling etc. policies, the VHF-Offline algorithm achieved shorter total scheduling length.
引文
Aarts, E., J. Korst, et al. (2005). Simulated annealing. Search methodologies, Springer:187-210.
    Ahmadinia, A., C. Bobda, et al. (2004). A dynamic scheduling and placement algorithm for reconfigurable hardware. Organic and Pervasive Computing-ARCS 2004, Springer:125-139.
    Alfredo Tang Montane, F. and R. D. Galvao (2006). "A tabu search algorithm for the vehicle routing problem with simultaneous pick-up and delivery service." Computers & Operations Research 33(3):595-619.
    Antusiak, J., A. Trouve, et al. (2012). A Comparison of DAG and Mesh Topologies for Coarse-Grain Reconfigurable Array. Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW),2012 IEEE 26th International, IEEE.
    Arato, P., S. Juhasz, et al. (2003). Hardware-software partitioning in embedded system design. Intelligent Signal Processing,2003 IEEE International Symposium on, IEEE.
    Arnold, J. M. (1995). "The Splash 2 software environment." The Journal of Supercomputing 9(3): 277-290.
    Banerjee, S., E. Bozorgzadeh, et al. (2006). "Integrating physical constraints in HW-SW partitioning for architectures with partial dynamic reconfiguration." Very Large Scale Integration (VLSI) Systems, IEEE Transactions on 14(11):1189-1202.
    Banerjee, S., E. Bozorgzadeh, et al. (2010). "Bandwidth Management in Application Mapping for Dynamically Reconfigurable Architectures." ACM Transactions on Reconfigurable Technology and Systems (TRETS) 3(3):18.
    Baskaran, K., W. Jigang, et al. (2004). Hardware partitioning algorithm for reconfigurable operating system in embedded systems. Sixth Real-Time Linux Workshop.
    Bassiri, M. M. and H. Shahhoseini (2010). Mitigating reconfiguration overhead in on-line task scheduling for reconfigurable computing systems. Computer Engineering and Technology (ICCET),2010 2nd International Conference on, IEEE.
    Bassiri, M. M. and H. S. Shahhoseini (2010). A New approach in on-line task scheduling for reconfigurable computing systems. Application-specific Systems Architectures and Processors (ASAP),2010 21st IEEE International Conference on, IEEE.
    Bazargan, K., R. Kastner, et al. (2000). "Fast template placement for reconfigurable computing systems." IEEE Design & Test of Computers 17(1):68-83.
    Bj(?)ner, D. (2006). "Hardware/Software Codesign." Software Engineering 3:Domains, Requirements, and Software Design:527-530.
    Blum, C. (2005). "Ant colony optimization:Introduction and recent trends." Physics of Life reviews 2(4):353-373.
    Bondalapati, K. and V. K. Prasanna (2000). Loop pipelining and optimization for run time reconfiguration. Parallel and Distributed Processing, Springer:906-915.
    Braun, T. D., H. J. Siegel, et al. (2001). "A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems." Journal of Parallel and Distributed computing 61(6):810-837.
    Brusco, M. J. (2006). "A repetitive branch-and-bound procedure for minimum within-cluster sums of squares partitioning." Psychometrika 71(2):347-363.
    Cadambi, S., J. Weener, et al. (1998). Managing pipeline-reconfigurable FPGAs. Proceedings of the 1998 ACM/SIGDA sixth international symposium on Field programmable gate arrays, ACM.
    Callahan, T. J., J. R. Hauser, et al. (2000). "The Garp architecture and C compiler." Computer 33(4):62-69.
    Chatha, K. S. and R. Vemuri (2001). MAGELLAN:multiway hardware-software partitioning and scheduling for latency minimization of hierarchical control-dataflow task graphs. Proceedings of the ninth international symposium on Hardware/software codesign, ACM.
    Chen, G, M. Kandemir, et al. (2004). Configuration-sensitive process scheduling for FPGA-based computing platforms. Proceedings of the conference on Design, automation and test in Europe-Volume 1, IEEE Computer Society.
    Chen, Y.-H. and P.-A. Hsiung (2005). Hardware task scheduling and placement in operating systems for dynamically reconfigurable SoC. Embedded and Ubiquitous Computing-EUC 2005, Springer:489-498.
    Cher, C.-Y. and M. Gschwind (2008). Cell GC:Using the Cell synergistic processor as a garbage collection coprocessor. Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments, ACM.
    Choi, S. and D. Yeung (2006). Learning-based SMT processor resource distribution via hill-climbing. ACM SIGARCH Computer Architecture News, IEEE Computer Society.
    Cordone, R., F. Redaelli, et al. (2009). "Partitioning and Scheduling of Task Graphs on Partially Dynamically Reconfigurable FPGAs." Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on 28(5):662-675.
    Coskun, A. K., T. S. Rosing, et al. (2007). Temperature aware task scheduling in MPSoCs. Proceedings of the conference on Design, automation and test in Europe, EDA Consortium.
    Cui, J., Q. Deng, et al. (2007). An efficient algorithm for online management of 2D area of partially reconfigurable FPGAs. Proceedings of the conference on Design, automation and test in Europe, EDA Consortium.
    Dave, B. P., G. Lakshminarayana, et al. (1999). "COSYN:Hardware-software co-synthesis of heterogeneous distributed embedded systems." Very Large Scale Integration (VLSI) Systems, IEEE Transactions on 7(1):92-104.
    DeHon, A. and J. Wawrzynek (1999). Reconfigurable computing:what, why, and implications for design automation. Design Automation Conference,1999. Proceedings.36th.
    Dick, R. P., D. L. Rhodes, et al. (1998). TGFF:task graphs for free. Proceedings of the 6th international workshop on Hardware/software codesign, IEEE Computer Society.
    Dimopoulos, V., I. Papaefstathiou, et al. (2007). A memory-efficient reconfigurable Aho-Corasick FSM implementation for intrusion detection systems. Embedded Computer Systems: Architectures, Modeling and Simulation,2007. IC-SAMOS 2007. International Conference on, IEEE.
    Ebeling, C., C. Fisher, et al. (2004). "Implementing an OFDM receiver on the RaPiD reconfigurable architecture." Computers, IEEE Transactions on 53(11):1436-1448.
    Edmonds, J., J. Gryz, et al. (2003). "Mining for empty spaces in large data sets." Theoretical Computer Science 296(3):435-452.
    Ernst, R., J. Henkel, et al. (1993). "Hardware-software cosynthesis for microcontrollers." Design & Test of Computers, IEEE 10(4):64-75.
    Estrin, G, B. Bussell, et al. (1963). "Parallel Processing in a Restructurable Computer System." Electronic Computers, IEEE Transactions on EC-12(6):747-755.
    Fan, L.-j., B. Li, et al. (2007). An approach for dynamic hardware/software partitioning based on DPBIL. Natural Computation,2007. ICNC 2007. Third International Conference on, IEEE.
    Fekete, S., E. Kohler, et al. (2001). Optimal FPGA module placement with temporal precedence constraints. Design, Automation and Test in Europe,2001. Conference and Exhibition 2001. Proceedings, IEEE.
    Garey, R. and D. S. Johnson (1979). Computers and Intractability:A Guide to the Theory of NP-Completeness, W. H. Freeman.
    Ghiasi, S., A. Nahapetian, et al. (2004). "An optimal algorithm for minimizing run-time reconfiguration delay." ACM Transactions on Embedded Computing Systems (TECS) 3(2): 237-256.
    Goel, S. K., K. Chiu, et al. (2004). Test infrastructure design for the Nexperia home platform PNX8550 system chip. Proceedings of the conference on Design, automation and test in Europe-Volume 3, IEEE Computer Society.
    Goldstein, S. C., H. Schmit, et al. (2000). "PipeRench:A reconfigurable architecture and compiler." Computer 33(4):70-77.
    Goldstein, S. C., H. Schmit, et al. (1999). PipeRench:a co/processor for streaming multimedia acceleration. ACM SIGARCH Computer Architecture News, IEEE Computer Society.
    Gumming, P. (2003). "The ti omap platform approach to soc." Winning the SoC revolution: experiences in real design:97.
    Guo, Z., B. Buyukkurt, et al. (2005). Optimized generation of data-path from C codes for FPGAs. Proceedings of the conference on Design, Automation and Test in Europe-Volume 1, IEEE Computer Society.
    Gupta, R. K. and G. De Micheli (1992). System-level synthesis using re-programmable components. Design Automation,1992. Proceedings., [3rd] European Conference on, IEEE.
    Gupta, S., G. Agarwal, et al. (2010). Task scheduling in multiprocessor system using genetic algorithm. Machine Learning and Computing (ICMLC),2010 Second International Conference on, IEEE.
    Haddow, P. C. and A. M. Tyrrell (2011). "Challenges of evolvable hardware:past, present and the path to a promising future." Genetic Programming and Evolvable Machines 12(3):183-215.
    Handa, M. (2004). Online Placement and Scheduling Algorithms and Methodologies for Reconfigurable Computing Systems, University of Cincinnati.
    Handa, M. and R. Vemuri (2004). An efficient algorithm for finding empty space for online FPGA placement. Proceedings of the 41 st annual Design Automation Conference, ACM.
    Hartenstein, R., M. Herz, et al. (1999). Mapping applications onto reconfigurable KressArrays. Field Programmable Logic and Applications, Springer.
    Hartenstein, R., M. Herz, et al. (2000). KressArray Xplorer:A new CAD environment to optimize reconfigurable datapath array architectures. Design Automation Conference,2000. Proceedings of the ASP-DAC 2000. Asia and South Pacific, IEEE.
    Hauck, S. (1998). Configuration prefetch for single context reconfigurable coprocessors. Proceedings of the 1998 ACM/SIGDA sixth international symposium on Field programmable gate arrays, ACM.
    Hennessy, J. L. and D. A. Patterson (2012). Computer architecture:a quantitative approach, Elsevier.
    Hentrich, D., E. Oruklu, et al. (2011). "Polymorphic Computing:Definition, Trends, and a New Agent-Based Architecture." Circuits and Systems 2(4):6.
    Hirata, K. and J. Goodacre (2007). ARM MPCore; The streamlined and scalable ARM11 processor core. Design Automation Conference,2007. ASP-DAC'07. Asia and South Pacific, IEEE.
    Hogenauer, E. B. (2005). Adaptive computing engine with dataflow graph based sequencing in reconfigurable mini-matrices of composite functional blocks, Google Patents.
    Huang, M., V. K. Narayana, et al. (2010). "Reconfiguration and Communication-Aware Task Scheduling for High-Performance Reconfigurable Computing." ACM Trans. Reconfigurable Technol. Syst.3(4):1-25.
    Huang, W., D. Chen, et al. (2007). "A new heuristic algorithm for rectangle packing." Computers & Operations Research 34(11):3270-3280.
    Iotfii, H., A. Broumandnia, et al. (2010). Task graph scheduling in multiprocessor systems using a coarse grained genetic algorithm. Computer Technology and Development (ICCTD),2010 2nd International Conference on, IEEE.
    Jigang, W., T. Srikanthan, et al. (2006). Efficient algorithm for functional scheduling in hardware/software co-design. Field Programmable Technology,2006. FPT 2006. IEEE International Conference on, IEEE.
    Jigang, W., T. Srikanthan, et al. (2008). "Algorithmic aspects for functional partitioning and scheduling in hardware/software co-design." Design Automation for Embedded Systems 12(4):345-375.
    Jinquan, Z., N. Lina, et al. (2005). A heuristic scheduling strategy for independent tasks on grid. High-Performance Computing in Asia-Pacific Region,2005. Proceedings. Eighth International Conference on, IEEE.
    Kalavade, A. and E. A. Lee (1994). A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem. Proceedings of the 3rd international workshop on Hardware/software co-design, IEEE Computer Society Press.
    Kastensmidt, F. L., L. Carro, et al. (2006). Fault-tolerance Techniques for SRAM-based FPGAs, Springer.
    Kean, T. and I. Buchanan (1992). The use of FPGAs in a novel computing subsystem. First International ACM/SIGDA Workshop on Field-Programmable Gate Arrays.
    Kennedy, J. (2010). Particle swarm optimization. Encyclopedia of Machine Learning, Springer: 760-766.
    Knudsen, P. V. and J. Madsen (1996). PACE:A dynamic programming algorithm for hardware/software partitioning. Proceedings of the 4th International Workshop on Hardware/Software Co-Design, IEEE Computer Society.
    Kodi, A. K. and A. Louri (2004). "RAPID:reconfigurable and scalable all-photonic interconnect for distributed shared memory multiprocessors." Journal of Lightwave Technology 22(9): 2101.
    Kuang, S.-R., C.-Y. Chen, et al. (2005). Partitioning and pipelined scheduling of embedded system using integer linear programming. Parallel and Distributed Systems,2005. Proceedings.11th International Conference on, IEEE.
    Kwok, Y.-K. and I. Ahmad (1998). Benchmarking the task graph scheduling algorithms. Parallel Processing Symposium,1998. IPPS/SPDP 1998. Proceedings of the First Merged International... and Symposium on Parallel and Distributed Processing 1998, IEEE.
    Kwok, Y.-K. and I. Ahmad (1999). "Static scheduling algorithms for allocating directed task graphs to multiprocessors." ACM Computing Surveys (CSUR) 31(4):406-471.
    Lopez-Vallejo, M. and J. C. Lopez (2003). "On the hardware-software partitioning problem: System modeling and partitioning techniques." ACM Transactions on Design Automation of Electronic Systems (TODAES) 8(3):269-297.
    La Rosa, A., L. Lavagno, et al. (2001). A software development tool chain for a reconfigurable processor. Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems, ACM.
    Lee, E. A. (2001). Computing for embedded systems. IEEE INSTRUMENTATION AND MEASUREMENT TECHNOLOGY CONFERENCE PROCEEDINGS, IEEE; 1999.
    Li, J., X. Dai, et al. (2009). "Automatic reconfiguration of Petri net controllers for reconfigurable manufacturing systems with an improved net rewriting system-based approach." Automation Science and Engineering, IEEE Transactions on 6(1):156-167.
    Li, J., X. Dai, et al. (2009). "Rapid design and reconfiguration of Petri net models for reconfigurable manufacturing cells with improved net rewriting systems and activity diagrams." Computers & Industrial Engineering 57(4):1431-1451.
    Li, W., Z. Dai, et al. (2007). Design and implementation of a high-speed reconfigurable modular arithmetic unit. Advanced Parallel Processing Technologies, Springer:50-59.
    Li, Y., T. Callahan, et al. (2000). Hardware-software co-design of embedded reconfigurable architectures. Proceedings of the 37th Annual Design Automation Conference, ACM.
    Li, Z. and S. Hauck (2001). Configuration compression for virtex fpgas. Field-Programmable Custom Computing Machines,2001. FCCM'01. The 9th Annual IEEE Symposium on, IEEE.
    Li, Z. and S. Hauck (2002). Configuration prefetching techniques for partial reconfigurable coprocessor with relocation and defragmentation. Proceedings of the 2002 ACM/SIGDA tenth international symposium on Field-programmable gate arrays, ACM.
    Linderoth, J. T. and T. K. Ralphs (2005). "Noncommercial software for mixed-integer linear programming." Integer Programming:Theory and Practice 3:253-303.
    Lo, S.-T., R.-M. Chen, et al. (2008). "Multiprocessor system scheduling with precedence and resource constraints using an enhanced ant colony system." Expert Systems with Applications 34(3):2071-2081.
    Lu, Y., T. Marconi, et al. (2008). An efficient algorithm for free resources management on the FPGA. Proceedings of the conference on Design, automation and test in Europe, ACM.
    Madsen, J., J. Grode, et al. (1997). "LYCOS:The Lyngby co-synthesis system." Design Automation for Embedded Systems 2(2):195-235.
    Makimoto, T. (2002). The hot decade of field programmable technologies. Field-Programmable Technology,2002. (FPT). Proceedings.2002 IEEE International Conference on.
    Marconi, T., Y. Lu, et al. (2008). Online hardware task scheduling and placement algorithm on partially reconfigurable devices. Reconfigurable Computing:Architectures, Tools and Applications, Springer:306-311.
    Marshall, A., T. Stansfield, et al. (1999). A reconfigurable arithmetic array for multimedia applications. Proceedings of the 1999 ACM/SIGDA seventh international symposium on Field programmable gate arrays, ACM.
    Martello, S., D. Pisinger, et al. (2000). "The three-dimensional bin packing problem." Operations research 48(2):256-267.
    Maulik, U. and S. Bandyopadhyay (2003). "Fuzzy partitioning using a real-coded variable-length genetic algorithm for pixel classification." Geoscience and Remote Sensing, IEEE Transactions on 41 (5):1075-1081.
    Merino, P., J. C. Lopez, et al. (1998). A hardware operating system for dynamic reconfiguration of FPGAs. Field-Programmable Logic and Applications From FPGAs to Computing Paradigm, Springer:431-435.
    Miller, R., V. K. Prasanna-Kumar, et al. (1993). "Parallel computations on reconfigurable meshes." Computers, IEEE Transactions on 42(6):678-692.
    Mirsky, E. and A. DeHon (1996). MATRIX:a reconfigurable computing architecture with configurable instruction distribution and deployable resources. FPGAs for Custom Computing Machines,1996. Proceedings. IEEE Symposium on, IEEE.
    Moore, G. E. (1965). Cramming more components onto integrated circuits, McGraw-Hill.
    Moore, G E. (1975). Progress in digital integrated electronics. Electron Devices Meeting,1975 International, IEEE.
    Moseley, R. (2002). Transcending Static Deployment of Circuits:Dynamic Run-Time Systems and Mobile Hardware Processes for FPGAs, Computing Laboratory.
    Nageldinger, U. (2001). Coarse Grained Reconfigurable Architecture Design Space Exploration, Universitat.
    Potkonjak, M. and J. Rabaey (1994). Algorithm Selection:A quantitative computation-intensive optimization approach. Proceedings of the 1994 IEEE/ACM international conference on Computer-aided design, IEEE Computer Society Press.
    Redaelli, F., M. Santambrogio, et al. (2009). "An ILP formulation for the task graph scheduling problem tailored to bi-dimensional reconfigurable architectures." International Journal of Reconfigurable Computing 2009:7.
    Roman, S., H. Mecha, et al. (2006). Partition Based Dynamic 2D HW Multitasking Management. Digital System Design:Architectures, Methods and Tools,2006. DSD 2006.9th EUROMICRO Conference on, IEEE.
    Ronen, R., A. Mendelson, et al. (2001). "Coming challenges in microarchitecture and architecture." Proceedings of the IEEE 89(3):325-340.
    Rzadca, K. and F. Seredynski (2005). Heterogeneous multiprocessor scheduling with differential evolution. Evolutionary Computation,2005. The 2005 IEEE Congress on, IEEE.
    Salem, M. A. (2005). Ptolemy-Oriented Structural, Reconfigurable, and Heterogeneous Hardware Design, Verification and Synthesis. The Sixth Biennial Ptolemy Conference, University of California Berkeley, Mentor Graphics.
    Salminen, E., V. Lahtinen, et al. (2002). Overview of bus-based system-on-chip interconnections. Circuits and Systems,2002. ISCAS 2002. IEEE International Symposium on, IEEE.
    Salvadeo, P. A., A. C. Veca, et al. (2012). Historic behavior of the electronic technology. The Wave of Makimoto and Moore's Law in the Transistor's Age. Programmable Logic (SPL), 2012 VIII Southern Conference on.
    Schmit, H., D. Whelihan, et al. (2002). PipeRench:A virtualized programmable datapath in 0.18 micron technology. Custom Integrated Circuits Conference,2002. Proceedings of the IEEE 2002, IEEE.
    Sedcole, P., B. Blodget, et al. (2006). Modular dynamic reconfiguration in Virtex FPGAs. Computers and Digital Techniques, IEE Proceedings-, IET.
    Sedcole, P., B. Blodget, et al. (2006). "Modular dynamic reconfiguration in Virtex FPGAs." Computers and Digital Techniques, IEE Proceedings-153(3):157-164.
    Septien, J., D. Mozos, et al. (2008). Perimeter quadrature-based metric for estimating FPGA fragmentation in 2D HW multitasking. Parallel and Distributed Processing,2008. IPDPS 2008. IEEE International Symposium on, IEEE.
    Shah, S., E. Endsley, et al. (2002). Reconfigurable logic control using modular FSMs:design, verification, implementation, and integrated error handling. American Control Conference, 2002. Proceedings of the 2002, IEEE.
    Singh, H., M.-H. Lee, et al. (2000). "MorphoSys:an integrated reconfigurable system for data-parallel and computation-intensive applications." Computers, IEEE Transactions on 49(5):465-481.
    Soni, M. (2001). VLSI Implementation of a Wormhole Run-time Reconfigurable Processor, Virginia Polytechnic Institute and State University.
    Srinivasan, S. and N. K. Jha (1995). Hardware-software co-synthesis of fault-tolerant real-time distributed embedded systems. Design Automation Conference,1995, with EURO-VHDL, Proceedings EURO-DAC'95., European, IEEE.
    Steiger, C., H. Walder, et al. (2003). Heuristics for online scheduling real-time tasks to partially reconfigurable devices. Field Programmable Logic and Application, Springer:575-584.
    Steiger, C., H. Walder, et al. (2003). Online scheduling and placement of real-time tasks to partially reconfigurable devices. Real-Time Systems Symposium,2003. RTSS 2003.24th IEEE, IEEE.
    Stitt, G., R. Lysecky, et al. (2003). Dynamic hardware/software partitioning:a first approach. Proceedings of the 40th annual Design Automation Conference, ACM.
    Suresh, D. C., W. A. Najjar, et al. (2003). Profiling tools for hardware/software partitioning of embedded applications. ACM SIGPLAN Notices, ACM.
    Swiecicka, A., F. Seredynski, et al. (2006). "Multiprocessor scheduling and rescheduling with use of cellular automata and artificial immune system support." Parallel and Distributed Systems, IEEE Transactions on 17(3):253-262.
    Tabero, J., J. Septien, et al. (2004). A low fragmentation heuristic for task placement in 2D RTR HW management. Field Programmable Logic and Application, Springer:241-250.
    Tabero, J., H. Wick, et al. (2003). "A vertex-list approach to 2D HW multitasking management in RTR FPGAs." Design of Circuits and Integrated Systems (DCIS):545-550.
    Taylor, M. B. (1999). Design decisions in the implementation of a Raw architecture workstation, Massachusetts Institute of Technology.
    Vahid, F. (2002). "Partitioning sequential programs for CAD using a three-step approach." ACM Transactions on Design Automation of Electronic Systems (TODAES) 7(3):413-429.
    Vanzago, L., B. Bhattacharya, et al. (2003). Design space exploration for a wireless protocol on a reconfigurable platform. Design, Automation and Test in Europe Conference and Exhibition, 2003, IEEE.
    Von Neumann, J. (1993). "First Draft of a Report on the EDVAC." Annals of the History of Computing, IEEE 15(4):27-75.
    Waingold, E., M. Taylor, et al. (1997). "Baring it all to software:Raw machines." Computer 30(9): 86-93.
    Walder, H. and M. Platzner (2003). Online scheduling for block-partitioned reconfigurable devices. Proceedings of the conference on Design, Automation and Test in Europe-Volume 1, IEEE Computer Society.
    Walder, H., C. Steiger, et al. (2003). Fast online task placement on FPGAs:free space partitioning and 2D-hashing. Parallel and Distributed Processing Symposium,2003. Proceedings. International, IEEE.
    Wang, G, W. Gong, et al. (2004). System level partitioning for programmable platforms using the ant colony optimization. International Workshop on Logic & Synthesis (IWLS'04), Temecula, California, Citeseer.
    Wang, H. (2005). "Flexible flow shop scheduling:optimum, heuristics and artificial intelligence solutions." Expert Systems 22(2):78-85.
    Wiangtong, T., P. Y. Cheung, et al. (2002). "Comparing three heuristic search methods for functional partitioning in hardware-software codesign." Design Automation for Embedded Systems 6(4):425-449.
    Wolf, W. (2003). "A decade of hardware/software codesign." Computer 36(4):38-43.
    Wu, A. S., H. Yu, et al. (2004). "An incremental genetic algorithm approach to multiprocessor scheduling." Parallel and Distributed Systems, IEEE Transactions on 15(9):824-834.
    Wu, J. and T. Srikanthan (2006). "Low-complex dynamic programming algorithm for hardware/software partitioning." Information Processing Letters 98(2):41-46.
    Wu, Y.-L., W. Huang, et al. (2002). "An effective quasi-human based heuristic for solving the rectangle packing problem." European Journal of Operational Research 141(2):341-358.
    Xue-Gong, Z., W. Ying, et al. (2006). On-line scheduling of real-time tasks for reconfigurable computing system. Field Programmable Technology,2006. FPT 2006. IEEE International Conference on.
    Yao, X. and T. Higuchi (1999). "Promises and challenges of evolvable hardware." Systems, Man, and Cybernetics, Part C:Applications and Reviews, IEEE Transactions on 29(1):87-97.
    Youness, H., M. Hassan, et al. (2009). A high performance algorithm for scheduling and hardware-software partitioning on MPSoCs. Design & Technology of Integrated Systems in Nanoscal Era,2009. DTIS'09.4th International Conference on, IEEE.
    Youness, H., A.-M. Wahdan, et al. (2010). Efficient partitioning technique on multiple cores based on optimal scheduling and mapping algorithm. Circuits and Systems (ISCAS), Proceedings of 2010 IEEE International Symposium on, IEEE.
    Zhang, J., Q. Wu, et al. (2012). "Research on design method of dynamic partial reconfigurable system." Journal of Software Engineering 6(2):21-30.
    Zhu, Y. (1992). "Efficient processor allocation strategies for mesh-connected parallel computers." Journal of Parallel and Distributed computing 16(4):328-337.
    陈晶,潘全科.2008.求解独立任务调度的离散粒子群优化算法计算机工程[J].34(6):3.
    杜高明.2007MPSoC-NoC多核体系结构及原型芯片实现技术研究[D]:[博士].合肥工业大学:合肥:128..
    郭天天.2006.嵌入式系统软硬件划分技术研究[D]:[博士].国防科学技术大学;长沙:114..
    韩红蕾,刘文菊,武继刚等.2011.多核片上系统的高效软硬件划分及调度算法.计算机工程与科学[J].33(9).
    何琨,黄文奇,金燕.2012.基于动作空间求解二维矩形Packing问题的高效算法.软件学报[J].(5).
    金燕.2012.求解二维矩形packing问题的高效算法设计[M]:[硕士].华中科技大学;武汉:45.
    李凯,左春荣.2009.基于模拟退火的多处理机调度优化算法研究.系统工程与电子技术[J].31(12):5.
    李涛.2007.动态重构系统若干关键问题的研究[D]:[博士].南开大学;天津:139.
    李涛,杨愚鲁.2008.可重构资源管理及硬件任务布局的算法研究.计算机研究与发展[J].45(2):8.
    刘沙,周学功,王颖等.2011.可重构系统在线任务预约重调度算法.计算机工程[J].37(8):271-274.
    刘彦,李仁发,许新达等.2010.一种异构可重构片上系统的实时任务调度算法.计算机研究与发展[J].47(6).
    刘勇.2006.嵌入式可重构计算系统及其任务调度机制的研究[D]:[博士].中国科学院上海微系统与信息技术研究所;上海:104.
    刘源.2010.可重构星载计算机体系结构与容错技术研究[D]:[博士].哈尔滨工业大学;哈尔滨:121.
    罗赛.2006.可重构计算系统体系结构研究与实现[D]:[博士].中国科学技术大学;合肥:171.
    罗怡桂.2004.基于CDM的软硬件协同设计若干关键技术研究[D]:[博士].华东师范大学;上海:115.
    齐骥,李曦,胡楠等.2006.基于硬件任务顶点的可重构系统资源管理算法.电子学报[J].34(11):5.
    瞿进.2011.可重构系统软硬功能划分及任务调度技术研究[D]:[博士].解放军信息工程大 学;郑州:107.
    任小西.2007.基于可重构计算的高可靠星载计算机体系结构研究[D]:[博士].湖南大学;长沙:118.
    沈英哲.2007.可重构计算系统中软硬件代码划分技术研究[D]:[博士].中国科学技术大学;合肥:114.
    沈英哲,周学海.2009.一种用于可重构计算系统的软硬件划分算法.中国科学技术大学学报[J].39(2):7.
    孙康.2007.可重构计算相关技术研究[D]:[博士].浙江大学计算机科学与技术学院浙江大学;杭州:120.
    王罡.2010.可重构加速平台下基于面积性能比的多任务调度优化策略研究[M]:[硕士].浙江大学;杭州:62.
    王秀丽,宁正元.2006.基于动态适应度的独立任务调度算法.计算机应用[J].26(12):3.
    徐建军.2010.面向寄存器软错误的容错编译技术研究[D]:[博士].国防科学技术大学;长沙:132.
    许居衍.2001.半导体产品特征循环波动规律及其对产品技术发展的启示[M].2001中国通信专用集成电路设计与应用高级研讨会论文集.
    杨刚,肖宇彪,陈江.2006.32位嵌入式系统与SoC设计导论/嵌入式技术与应用丛书[M].电子工业出版社.
    张鲁峰,李思昆,刘功杰.2000.嵌入式系统软硬件划分方法研究.计算机应用[J].S1(20):3.
    张为华,王晔,鲁云萍等.2006.一种可重配置系统的模型.小型微型计算机系统[J].27(7):5.
    周学功.2007.可重构嵌入式系统样机平台与操作系统研究[D]:[博士].复旦大学;上海:102.
    周学功,梁樑,黄勋章等.2007.可重构系统中的实时任务在线调度与放置算法.计算机学报[J].30(11):9.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700