000 | nam a22 7a 4500 | ||
---|---|---|---|
999 |
_c25 _d25 |
||
003 | DUET_LibPGT_2014_08_22 | ||
005 | 20170817221340.0 | ||
008 | 170817b xxu||||| |||| 00| 0 eng d | ||
027 | _qDICE 14012 | ||
040 | _cKAIST | ||
082 | _aDICE 14012 | ||
100 | _4Mohammad Abdur Rouf | ||
245 |
_aControl Flow Vulnerability: Modeling, Evaluation and Low-cost Hardware/Software Solutions. _cMohammad Abdur Rouf |
||
260 |
_aKorea Adanced Institute of Technology (KAIST) _bKAIST Library _c23-05-2014 |
||
300 | _axi, 111p. : hard binding ; 30 cm | ||
500 | _aEmbedded systems are becoming more susceptible to transient errors because of miniaturization of VLSI circuits and reduction of voltage levels. These errors affect the processor’s pipeline and hence its data and control flows. Data errors are two types: (i) computational errors due to incorrect results from functional units, and (ii) memory errors occur due to corruption of the stored data. However, errors in control flow can change the program’s execution sequence, which might be catastrophic for safety-critical applications. Vulnerabilities to transient errors in a microprocessor system were previously performed for instruction queues, execution units, register files, read/write buffers, instruction and data caches, and translation look aside buffers. However, control flow vulnerabilities have not been explored extensively. The author makes a model to evaluate the program’s Vulnerability Factor of Control Flow (VFCF) in a pipelined processor. VFCF is investigated for a program under different compiler optimization strategies. It is observed that different programs show various degrees of VFCF against compiler optimizations flags. To better evaluate the VFCF, author redevelops VFCF model referred to as CFV model which integrates normalized instructions, branches, taken branches and execution cycles. Conventional techniques are either software-based or hardware-based to overcome control flow vulnerabilities. Software-based techniques suffer from increased code-size overhead and have a negative impact on energy consumption and performance degradation. On the other hand, hardware-based schemes incur high hardware and area costs. Author proposes two low-cost control flow vulnerability reduction mechanisms: (i) hardware-based low-cost control flow error checking scheme and (ii) code transformation scheme. Low-cost Control Flow Error Checking (CFEC) scheme is a hardware-based technique that exploits available redundancies in the microprocessor’s pipeline. A branch target buffer (BTB) stores the target addresses of taken branches, a short backward branch (SBB) detector stores short backward branch targets and an arithmetic logic unit (ALU) generates branch target addresses using the low-order branch displacement bits of branch instructions. The proposed CFEC scheme utilizes these redundancies to detect and recover from control-flow errors in the pipeline with negligible energy overhead of 0.9% and performance overhead of 0.8%, while error coverage ranges from 86% to 99%. Secondly, the author applies code transformations such as code replication, condition merging, and selected combination of these transformations to application programs. The transformed code with the use of compiler optimization flags reduce CFV significantly. The effects of code transformations on CFV are verified for two embedded architectures: ARM and MIPS. The CFV is reduced by 18% to 98% and on the average by 62% for ARM programs. In the MIPS programs, CFV is reduced by 55% on the average. The combined reliability and performance metric CFV × CPI is also reduced by 63% for ARM and by 65% for MIPS. | ||
505 | _uhttps://drive.google.com/open?id=0B20VKNntsoafT2pNYWc5dW5sbDA | ||
630 | _lEnglish | ||
650 |
_2Control-flow error _vRealiability _xLow-power _yComputer Architecture |
||
856 |
_3Fulltext Available _uhttps://drive.google.com/open?id=0B20VKNntsoafT2pNYWc5dW5sbDA |
||
942 |
_2ddc _cPGT |