Hybrid Pipeline Hardware Architecture Based on Error Detection and Correction for AES
Abstract
:1. Introduction
- The hybrid architecture combines both the concept of hardware and time redundancy through a pipeline structure, analyzing and balancing the critical path, and distributing the processing elements within each stage.
- From the perspective of the pipeline design, all risks and conflicts in the data transmission, through registers within each stage, are eliminated due to the processing of an iterative algorithm such as cryptographic ones that require giving too many passes to the data to generate its final output.
- A pipeline structure for ciphering five times on the same data blocks with a voting module to verify when an error occurs or to output correct cipher data.
- The voting module is optimized using a decision tree to reduce the complexity of all combinations required for evaluating when correct cipher data are present in the five registers of the pipeline structure.
- An analysis for the design, implementation, and selection of the architecture is implemented on several FPGA technologies such as Spartan-7, Artix-7, Kintex-7, and Virtex-7, where the best results are reached when the architecture is implemented on Virtex-7, reporting a throughput of 0.479 Gbps and efficiency of 0.336 Mbps/LUT.
2. Background
2.1. Advanced Encryption Standard
Algorithm 1: AES Encryption Algorithm [22] |
, fori = 1 do end for |
Algorithm 2: Decision Tree |
() ifthen return end if a possible output of fordo and child = child root end for return Root |
2.2. FPGA Optimization Techniques
- Speed Optimization: This optimization may have three approaches: (1)Pipelining, which improves the maximum clock frequency and is performed by adding registers to the critical path; (2)Parallel Processing, where, multiple parallel outputs are calculated over a clock period; and (3)Register Balancing applied to fulfill design-time requirements by redistributing logic evenly between registers.
- Area Optimization: This focuses mainly on two strategies: Resource Sharing, which employs a sole functional block to run many operators, and Proper Reset Strategy, in which the first effect on the area has to do with the set/reset condition for every flip-flop, but bringing a reset into every synchronous element can cause the synthesis and mapping tools to push the logic into a coarser implementation [24].
- Power Optimization: There are two ways in which FPGAs dissipate power, dynamically and statically. The first occurs during the charging and discharging of internal capacitances, and the second one by leaking currents during device standby [25].
3. Related Work
3.1. Error Detection and Correction Status
- Time redundancy, which seeks to reduce the amount of hardware while sacrificing additional time. The main drawback with time redundancy is the assumption that the data necessary to repeat a calculation are available in the system [26].
- Information redundancy can overcome data errors that may occur when they are transferred or stored in a memory unit.
- Hardware redundancy/Physical Redundancy is obtained by including additional hardware in the design to identify or remove the effects of a failed component [27].
- 1.
- Noise or electrical distortion: sound waves, electrical signals, noise from motors, power switches, etc.
- 2.
- Burst errors: large sets of bits that happen when many interconnected bit errors are occurring at numerous points.
- 3.
- Random bit errors: occur when bits have been rearranged by accident in the transmission process.
- 4.
- Cross talk and echo: when the transmission cable is environed by other transmission lines.
3.2. Fault Tolerance and Other Concepts
- Transient: normally caused by transitory events (mechanical vibration, voltage fluctuation, etc.). The system can recover in a short time.
- Pseudo-permanent: usually caused by transient accidents that happened in SRAM cells. These faults are similar to permanent failures but can be recovered by reloading the system.
- Permanent: habitually generated by physical damages to the chip (manufacturing defects, electromigration, etc.). The system can be recovered by loading a proper alternative configuration.
4. Proposed Hardware Architecture
4.1. AES_Cipher Module
- First stage:
- –
- Ciphering process: InitialRound and Feedback. In this stage, the state is selected from (a) initial round or (b) feedback state. The first stage performs two activities, either computing round 0 or using feedback from all ten rounds. Round 0 is the XOR binary operator between the plain data block and the key block, while the following rounds are the four operations defined by the standard.
- –
- Key expansion: RoundKey and Feedback. This is selected the key in an external way or from the feedback process, where the latter generates round keys.
- Second stage:
- –
- Ciphering process: SubBytes and ShiftRows. In this stage, the state is modified by two transformations: SubBytes and ShiftRows. The first is computed by using S-Boxes, while the second is executed by rearranging the data buses.
- –
- Key expansion: SubWord and RotWord. In this case, the SubWord transformation uses S-Boxes, and the RotWord performs a cyclic permutation. Additionally, an XOR operation is computed using a constant round.
- Third stage:
- –
- Ciphering process: MixColumns. In this stage, the state is modified by the MixColumns transformation, operating on the column-by-column, treating each column as a four-term polynomial, and making multiplications. There are two main outputs of this stage. One is when the MixCol sub-module computes MixColumns, and the other is the direct input from the previous stage. These are necessary because rounds from 1 to 9 use that sub-module, and round 10 does not use it.
- –
- Key expansion: XORoperation. At this point, several XOR operations are executed for providing the round key.
- Fourth stage:
- –
- Ciphering process: AddRoundKey. The multiplexer selects states from the ShiftRows transformation or from the MixColumns transformation through control signal sel_1r10. After this, an XOR binary operation is computed using a round key of the key expansion.
- –
- Key expansion: RoundKey. The round key is only stored and sent to the ciphering module.
- Fifth stage:
- –
- Ciphering process: Output. In this stage, the intermediate cipher data are generated, set in the main module’s output, and fed back. The signal Ready indicates when the output is correct.
- –
- Key expansion: Output. Unlike the ciphering process in this stage, the round key is not set in some output, but it is fed back.
4.2. Voting Module
4.2.1. Predictive Modeling: Decision Trees
4.2.2. Decision Tree Sub-Module
4.3. Control Module
5. Implementation Results and Comparisons
5.1. Hardware Architecture Analysis
5.2. Analysis and Evaluation of the Proposed Architecture
Metrics Evaluation Analysis
- Tools such as clock frequency, area, or power;
- Designs such as latency or size of the data blocks.
5.3. Test Vectors for Fault Detection
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Conflicts of Interest
Abbreviations
AES | Advanced Encryption Standard |
GPS | Global Positioning System |
CRC | Cyclic Redundancy Check |
SRAM | Static Random Access Memory |
CFTA | Configurable Fault-Tolerant AES |
SAFE | Secure AES Frame Encryption |
ECU | Electronic Control Unit |
V2X | Vehicle-to-Everything |
SMS | Short Message Service |
SATS | Secure Automotive Telematics Systems |
FPGA | Field-Programmable Gate Array |
IoT | Internet of Things |
IioT | Industrial Internet of Things |
IR&F | InitialRound and Feedback |
S&S&M | SubBytes, ShiftRows, and MixColumns |
S&S | SubBytes and ShiftRows |
M | MixColumns |
A | AddRoundKey |
IC | Intermediate Cipher Data |
References
- Boccini, G. Security in Automotive Microcontrollers of Next Generation. Ph.D. Thesis, Università di Pisa, Pisa, Italy, 2014. [Google Scholar]
- Mundhenk, P.; Paverd, A.; Mrowca, A.; Steinhorst, S.; Lukasiewycz, M.; Fahmy, S.; Chakraborty, S. Security in Automotive Networks: Lightweight Authentication and Authorization. ACM Trans. Des. Autom. Electron. Syst. 2017, 22, 1–27. [Google Scholar] [CrossRef] [Green Version]
- Ni, X.; Shi, W.; Foo, V.F.S. AES Security Protocol Implementation for Automobile Remote Keyless System. In Proceedings of the 2007 IEEE 65th Vehicular Technology Conference—VTC2007-Spring, Dublin, Ireland, 22–25 April 2007; pp. 2526–2529. [Google Scholar] [CrossRef]
- Lv, X.; Xu, L. AES encryption algorithm keyless entry system. In Proceedings of the 2012 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet), Yichang, China, 21–23 April 2012; pp. 3090–3093. [Google Scholar]
- Lugo-Meneses, C.A.; Peralta-Reynoso, D. Secure AES Frame Encryption for CAN FD. 2019. Available online: https://rei.iteso.mx/handle/11117/5973 (accessed on 21 August 2021).
- Henniger, O.; Ruddle, A.; Seudié, H.; Weyl, B.; Wolf, M.; Wollinger, T. Securing Vehicular On-Board IT Systems: The EVITA Project. 2009. Available online: https://www.evita-project.org/Publications/HRSW09.pdf (accessed on 21 August 2021).
- Jattala, I.; Durrani, S.; Farooqi, J.; Junjua, G.; Shafique, A.; Hussian, F.; Mahmood, H.; Ikram, N. Secure automotive telematics system (SATS). In Proceedings of the Eighth International Conference on Digital Information Management (ICDIM 2013), Islamabad, Pakistan, 10–12 September 2013; pp. 262–267. [Google Scholar] [CrossRef]
- Cassettari, R.; Fanucci, L.; Boccini, G. A new hardware implementation of the advanced encryption standard algorithm for automotive applications. In Proceedings of the 2014 10th Conference on Ph.D. Research in Microelectronics and Electronics (PRIME), Grenoble, France, 30 June–3 July 2014; pp. 1–4. [Google Scholar] [CrossRef]
- Traoré, P.S.; Asfour, A.; Yonnet, J.P. Noise analysis of a high sensitivity GMI sensor based on a Field-Programmable-Gate-Array. Sens. Actuators A Phys. 2021, 331, 112972. [Google Scholar] [CrossRef]
- Toan, N.; Tung, D.; So, J.; Lee, J.G. Immunity Characterization of FPGA I/Os for Fault-Tolerant Circuit Designs against EMI. Adv. Electr. Comput. Eng. 2019, 19, 37–44. [Google Scholar] [CrossRef]
- Benfica, J.; Green, B.; Porcher, B.C.; Poehls, L.B.; Vargas, F.; Medina, N.H.; Added, N.; de Aguiar, V.A.P.; Macchione, E.L.A.; Aguirre, F.; et al. Analysis of FPGA SEU sensitivity to combined effects of conducted EMI and TID. In Proceedings of the 2016 Asia-Pacific International Symposium on Electromagnetic Compatibility (APEMC), Shenzhen, China, 17–21 May 2016; Volume 1, pp. 887–889. [Google Scholar] [CrossRef]
- Shum, W. Glitch Reduction and CAD Algorithm Noise in FPGAs. Ph.D. Thesis, University of Toronto, Toronto, ON, Canada, 2011. [Google Scholar]
- Kotipalli, S.; Kim, Y.B.; Choi, M. Asynchronous Advanced Encryption Standard Hardware with Random Noise Injection for Improved Side-Channel Attack Resistance. J. Electr. Comput. Eng. 2014, 2014, 1–13. [Google Scholar] [CrossRef] [Green Version]
- Frieslaar, I.; Irwin, B. Developing an Electromagnetic Noise Generator to Protect a Raspberry PI from Side Channel Analysis. SAIEE Afr. Res. J. 2018, 109, 85–101. [Google Scholar] [CrossRef]
- Biham, E.; Shamir, A. Differential fault analysis of secret key cryptosystems. In Advances in Cryptology—CRYPTO ’97; Kaliski, B.S., Ed.; Springer: Berlin/Heidelberg, Germany, 1997; pp. 513–525. [Google Scholar]
- Koren, I.; Piuri, V.; Breveglieri, L.; Maistri, P.; Bertoni, G. Detecting and Locating Faults in VLSI Implementations of the Advanced Encryption Standard. In Proceedings 18th IEEE Symposium on Defect and Fault Tolerance in VLSI Systems; IEEE Computer Society: Boston, MA, USA, 5 November 2003; pp. 105–113. [Google Scholar] [CrossRef]
- Gligoroski, D.; Knapskog, S.J.; Andova, S. Cryptcoding—Encryption and Error-Correction Coding in a Single Step. In Security and Management; CSREA Press: Las Vegas, NV, USA, 2006; ISBN 1-60132-001-9. [Google Scholar]
- Athanasiou, G.S.; Tsingkas, E.; Michail, H.E.; Theodoridis, G.; Goutis, C.E. Throughput/Area Trade-offs of Loop Unrolling, Functional, and Structural Pipeline for Skein Hash Function. Comput. Sci. Eng. Int. J. (CSEIJ) 2013, 3, 1–21. [Google Scholar] [CrossRef]
- Ab Rahman, A.A.H.; Prihozhy, A.; Mattavelli, M. Pipeline synthesis and optimization of FPGA-based video processing applications with CAL. EURASIP J. Image Video Process. 2011, 2011, 1–28. [Google Scholar] [CrossRef] [Green Version]
- Bae, K.; Moon, S.; Choi, D.; Choi, Y.; Kim, H.D.; Ha, J. A practical analysis of fault attack countermeasure on AES using data masking. In Proceedings of the 2012 7th International Conference on Computing and Convergence Technology (ICCCT), Seoul, Korea, 3–5 December 2012; pp. 508–513. [Google Scholar]
- Devi, G.S. Two Bit error detection and single bit correction for AES. Master’s Thesis, Anna University, Chennai, India, 2014. [Google Scholar]
- National Institute of Standards and Technology (NIST). Advanced Encryption Standard. NIST FIPS PUB 197. 2001. Available online: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197.pdf (accessed on 21 August 2021).
- P., K.; Bobby, N.; Jayashree, C.; Lavanya, R. A Hybrid Fault Detection and Correction AES for Space Application. Int. J. Electron. Commun. Eng. 2013, 6, 187–197. [Google Scholar]
- Kilts, S. Advanced FPGA Design: Architecture, Implementation, and Optimization; Wiley-IEEE Press: Piscataway, NJ, USA, 2007; p. 352. [Google Scholar]
- Khan, M. Power Optimization in FPGA Designs; Technical Report; Altera Corp.: San Jose, CA, USA, 2006. [Google Scholar]
- Johnson, B.W. The Design and Analysis of Fault Tolerant Digital Systems; Addison-Wesley: Boston, MA, USA, 1989. [Google Scholar]
- Koren, I.; Krishna, C. Fault-Tolerant Systems; Elsevier Science: Amsterdam, The Netherlands, 2010. [Google Scholar]
- Panem, C.; Gad, V.; Gad, R. Polynomials in Error Detection and Correction in Data Communication System. Available online: https://www.intechopen.com/chapters/69897 (accessed on 23 July 2021).
- Anton, C.; Ionescu, L.; Tutanescu, I.; Alin, M.; Serban, G. Implementation and Analysis of an Error Detection and Correction System on FPGA. Int. J. Intell. Comput. Res. 2013, 4, 334–339. [Google Scholar] [CrossRef]
- Kamboj, A.; Bansal, R.K.; Bansal, S. High speed parallel concurrent error detection scheme for robust AES hardware. Int. J. Adv. Res. Electr. Electron. Instrum. Eng. 2013, 2, 4750–4756. [Google Scholar]
- Ayoob, M.; Adi, W. Fault Detection and Correction in Processing AES Encryption Algorithm. In Proceedings of the 2015 Sixth International Conference on Emerging Security Technologies (EST), Braunschweig, Germany, 3–5 September 2015; pp. 7–12. [Google Scholar] [CrossRef]
- Mandal, S.; Sau, S.; Chakrabarti, A.; Saini, J.; Pal, S.K.; Chattopadhyay, S. FPGA Based Novel High Speed DAQ System Design with Error Correction. In Proceedings of the 2015 IEEE Computer Society Annual Symposium on VLSI, Montpellier, France, 8–10 July 2015; pp. 80–85. [Google Scholar] [CrossRef] [Green Version]
- Janusz Biernat, M.C.; Nikodem, M. Error Correction Procedures for a Hardware Implementation of the Advanced Encryption Standard. IFAC Proc. Vol. 2006, 39, 307–312. [Google Scholar] [CrossRef]
- Harikrishna, B.; Ravi, S. A survey on fault tolerance in FPGAs 2013. In Proceedings of the 2013 7th International Conference on Intelligent Systems and Control (ISCO), Coimbatore, India, 4–5 January 2013; pp. 265–270. [Google Scholar] [CrossRef]
- Shang, L.; Zhou, M.; Hu, Y. A fault-tolerant system-on-programmable-chip based on domain-partition and blind reconfiguration. In Proceedings of the 2010 NASA/ESA Conference on Adaptive Hardware and Systems, Anaheim, CA, USA, 15–18 June 2010; pp. 297–303. [Google Scholar]
- Sorin, D. Fault Tolerant Computer Architecture; Morgan & Claypool Publisher: San Rafael, CA, USA, 2009; Volume 4. [Google Scholar] [CrossRef]
- Johnson, B.W. An Introduction to the Design and Analysis of Fault-Tolerant Systems. In Fault-Tolerant Computer System Design; Prentice-Hall, Inc.: Hoboken, NJ, USA, 1996; pp. 1–87. [Google Scholar]
- Zhang, C.; Yu, Q.; Liu, X. A hybrid fault tolerant approach for AES. Int. J. Netw. Secur. 2013, 15, 291–297. [Google Scholar]
- Sheikhpour, S.; Mahani, A.; Bagheri, N. Practical fault resilient hardware implementations of AES. IET Circuits Devices Syst. 2019, 13, 596–606. [Google Scholar] [CrossRef]
- Kamal, A.A.; Youssef, A.M. An FPGA implementation of AES with fault analysis countermeasures. In Proceedings of the 2009 International Conference on Microelectronics—ICM, Marrakech, Morocco, 19–22 December 2009; pp. 217–220. [Google Scholar]
- Sheikhpour, S.; Mahani, A.; Bagheri, N. Reliable advanced encryption standard hardware implementation: 32-bit and 64-bit data-paths. Microprocess. Microsyst. 2021, 81, 103740. [Google Scholar] [CrossRef]
- Elkabbany, G.; Aslan, H.; Rasslan, M. A Design of a Fast Parallel-Pipelined Implementation of AES: Advanced Encryption Standard. Int. J. Comput. Sci. Inf. Technol. 2014, 6, 39–59. [Google Scholar] [CrossRef]
- Nabil, M.; Khalaf, A.A.; Hassan, S.M. Design and implementation of pipelined and parallel AES encryption systems using FPGA. Indones. J. Electr. Eng. Comput. Sci. 2020, 20, 287–299. [Google Scholar] [CrossRef]
- Shenoy, N. Retiming: Theory and practice. Integration 1997, 22, 1–21. [Google Scholar] [CrossRef]
- Leiserson, C.E.; Rose, F.M.; Saxe, J.B. Optimizing synchronous circuitry by retiming (preliminary version). In Third Caltech Conference on Very Large Scale Integration; Springer: Berlin/Heidelberg, Germany, 1983; pp. 87–116. [Google Scholar]
- Shmueli, G. To Explain or to Predict? Statist. Sci. 2010, 25, 289–310. [Google Scholar] [CrossRef]
- Rokach, L.; Maimon, O. Decision Trees. In Data Mining and Knowledge Discovery Handbook; Maimon, O., Rokach, L., Eds.; Springer: Boston, MA, USA, 2005; pp. 165–192. [Google Scholar] [CrossRef]
- Fularz, M.; Kraft, M. Hardware implementation of a decision tree classifier for object recognition applications. Meas. Autom. Monit. 2015, 61, 379–381. [Google Scholar]
- Struharik, R.J.R.; Novak, L.A. Hardware Implementation of Decision Tree Ensembles. J. Circuits Syst. Comput. 2013, 22, 1350032. [Google Scholar] [CrossRef]
- Cofer, R.; Harding, B.F. Rapid System Prototyping with FPGAs: Accelerating the Design Process; Elsevier: Amsterdam, The Netherlands, 2006. [Google Scholar]
- Bossen, D.C.; Kitamorn, A.; Reick, K.F.; Floyd, M.S. Fault-tolerant design of the IBM pSeries 690 system using POWER4 processor technology. IBM J. Res. Dev. 2002, 46, 77–86. [Google Scholar] [CrossRef]
- Qasim, S.M.; Abbasi, S.A.; Almashary, B. A review of FPGA-based design methodology and optimization techniques for efficient hardware realization of computation intensive algorithms. In Proceedings of the 2009 International Multimedia, Signal Processing and Communication Technologies, Aligarh, India, 14–16 March 2009; pp. 313–316. [Google Scholar] [CrossRef]
- Algredo-Badillo, I.; Feregrino-Uribe, C.; Cumplido, R. Design and Implementation of an FPGA-Based 1.452-Gbps Non-pipelined AES Architecture. In International Conference on Computational Science and Its Applications; Springer: Berlin/Heidelberg, Germany, 2006; Volume 3982. [Google Scholar] [CrossRef]
- Mestiri, H.; Benhadjyoussef, N.; Machhout, M.; Tourki, R. An FPGA implementation of the AES with fault detection countermeasure. In Proceedings of the 2013 International Conference on Control, Decision and Information Technologies (CoDIT), Hammamet, Tunisia, 6–8 May 2013; pp. 264–270. [Google Scholar] [CrossRef]
- Usman, M.; Ahmed, I.; Aslam, M.I.; Khan, S.; Shah, U.A. SIT: A Lightweight Encryption Algorithm for Secure Internet of Things. Int. J. Adv. Comput. Sci. Appl. 2017, 8, 402–411. [Google Scholar] [CrossRef]
- Al-Ramini, L.M. Implementation of Proposed Lightweight Cryptosystem for Use in Cloud Computing Security. Ph.D. Thesis, Middle East University, Amman, Jordania, 2018. [Google Scholar]
Comparator | RegisterA | RegisterB | RegisterC | RegisterD | RegisterE |
---|---|---|---|---|---|
A==B | X | X | |||
A==C | X | X | |||
A==D | X | X | |||
A==E | X | X | |||
B==C | X | X | |||
B==D | X | X | |||
B==E | X | X | |||
C==D | X | X | |||
C==E | X | X | |||
D==E | X | X |
Combination | A==B | A==C | … | C==E | D==E | Fault | Final Cipher Data |
---|---|---|---|---|---|---|---|
1 | 0 | 0 | … | 0 | 0 | 1 | None |
2 | 0 | 0 | … | 0 | 1 | 1 | None |
… | … | … | … | … | … | … | … |
1023 | 1 | 1 | … | 1 | 0 | 1 | Inconsistency |
1024 | 1 | 1 | … | 1 | 1 | 0 | Some register |
AES Hardware Architecture 1R | ||||
---|---|---|---|---|
FPGA technology | Spartan 7 | Artix 7 | Kintex 7 | Virtex 7 |
Device | xc7s75fgga484-1 | xc7a75tfgg484-1 | xc7k70tfbg484-1 | xc7vh870tflg1932-1 |
LUT | 1382 | 1381 | 1353 | 1355 |
LUTRAM | 0 | 0 | 0 | 0 |
FF | 557 | 557 | 557 | 557 |
IOB | 263 | 263 | 263 | 263 |
BUFG | 1 | 1 | 1 | 1 |
Clock period (ns) | 6.420 | 6.743 | 5.190 | 5.022 |
Frequency (MHz) | 155.7 | 148.3 | 192.7 | 199.1 |
Data Size | 128 | 128 | 128 | 128 |
Latency (clock cycles) | 11 | 11 | 11 | 11 |
Throughput (Gbps) | 1.812 | 1.726 | 2.242 | 2.317 |
Efficiency (Mbps/LUT) | 1.311 | 1.249 | 1.657 | 1.710 |
Efficiency (Mbps/FF) | 3.253 | 3.098 | 4.025 | 4.160 |
AES Hardware Architecture 5R | ||||
---|---|---|---|---|
FPGA technology | Spartan 7 | Artix 7 | Kintex 7 | Virtex 7 |
Device | xc7s75fgga484-1 | xc7a75tfgg484-1 | xc7k70tfbg484-1 | xc7vh870tflg1932-1 |
LUT | 1431 | 1429 | 1426 | 1425 |
LUTRAM | 1 | 1 | 1 | 1 |
FF | 1900 | 1900 | 1900 | 1900 |
IOB | 261 | 261 | 261 | 261 |
BUFG | 1 | 1 | 1 | 1 |
Clock period (ns) | 5.542 | 5.735 | 4.617 | 4.679 |
Frequency (MHz) | 180.4 | 174.3 | 216.6 | 213.7 |
Data Size | 128 | 128 | 128 | 128 |
Latency (clock cycles) | 57 | 57 | 57 | 57 |
Throughput (Gbps) | 0.405 | 0.391 | 0.486 | 0.479 |
Efficiency (Mbps/LUT) | 0.283 | 0.273 | 0.340 | 0.336 |
Efficiency (Mbps/FF) | 0.213 | 0.205 | 0.255 | 0.252 |
Work | Characteristics | Throughput | Approach |
---|---|---|---|
(Mbps) | |||
[39]—FMR | Xilinx Virtex 5, XC5VLX110T, 1886 slices (409.7%), 244 MHz | 2602.60 | Fault Tolerant |
[39]—FTR | Xilinx Virtex 5, XC5VLX110T, 504 slices (36.2%), 242 MHz | 595.60 | Fault Tolerant |
[40]—w/o PAC | Xilinx Virtex II, XC2V1000, 5191 LUTs, 1628 FFs, 72.21 MHZ | 21.40 | Fault Detection |
[40]—w/ PAC | Xilinx Virtex II, XC2V1000, 5769 LUTs, 1754 FFs, 51.75 MHZ | 15.33 | Fault Detection |
[54] | Xilinx Virtex 5, XC5VFX70, 430 slices, 218.98 MHZ | 2235.22 | Fault Detection and correction |
[41]—AES128 | Xilinx Virtex 5, XC5VLX110t, 575 slices, 369 MHZ | 1389.17 | Fault Tolerant |
This work | Xilinx Virtex 7, XC7VH870, 1425 LUTs, 1900 FFs, 213.7 MHZ | 479.00 | Fault Detection and correction |
Type of Error | Test Vector | Epochs | Detection Ratio | Correction Ratio |
---|---|---|---|---|
Temporary (fixed values applied in ≤2 clk cycles) | 5000 | 3 | 100% | 100% |
Permanent (random values applied in ≥3 clk cycles) | 500 | 3 | 100% | 27% |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Algredo-Badillo, I.; Ramírez-Gutiérrez, K.A.; Morales-Rosales, L.A.; Pacheco Bautista, D.; Feregrino-Uribe, C. Hybrid Pipeline Hardware Architecture Based on Error Detection and Correction for AES. Sensors 2021, 21, 5655. https://doi.org/10.3390/s21165655
Algredo-Badillo I, Ramírez-Gutiérrez KA, Morales-Rosales LA, Pacheco Bautista D, Feregrino-Uribe C. Hybrid Pipeline Hardware Architecture Based on Error Detection and Correction for AES. Sensors. 2021; 21(16):5655. https://doi.org/10.3390/s21165655
Chicago/Turabian StyleAlgredo-Badillo, Ignacio, Kelsey A. Ramírez-Gutiérrez, Luis Alberto Morales-Rosales, Daniel Pacheco Bautista, and Claudia Feregrino-Uribe. 2021. "Hybrid Pipeline Hardware Architecture Based on Error Detection and Correction for AES" Sensors 21, no. 16: 5655. https://doi.org/10.3390/s21165655
APA StyleAlgredo-Badillo, I., Ramírez-Gutiérrez, K. A., Morales-Rosales, L. A., Pacheco Bautista, D., & Feregrino-Uribe, C. (2021). Hybrid Pipeline Hardware Architecture Based on Error Detection and Correction for AES. Sensors, 21(16), 5655. https://doi.org/10.3390/s21165655