Abstract
Hardware/software codesign is the activity of partitioning an application into a flexible part (software) and a fixed part (hardware). The flexible part includes C programs, configuration data, parameter settings, bitstreams, and so forth. The fixed part consists of programmable components such as microprocessors and coprocessors. There are several technological and economical reasons for implementing electronic systems in this fashion, and we will discuss them upfront in this chapter. Next, we consider the design space of programmable components: what distinguishes one component from the other, and how do we select one in a given hardware–software codesign. A key observation is that there is a trade-off between flexibility and efficiency. A third part in this chapter will define the abstraction levels for hardware and software for the purpose of this book. And finally, we will also define three terms that play a vital role in this book, namely the terms concurrent, parallel, and sequential.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Bogdanov A, Knudsen L, Leander G, Paar C, Poschmann A, Robshaw M, Seurin Y, Vikkelsoe C (2007) Present: An ultra-lightweight block cipher. In: Proc. Cryptographic Hardware and Embedded Systems 2007, pp 450–466
Ganesan P, Venugopalan R, Peddabachagari P, Dean A, Mueller F, Sichitiu M (2003) Analyzing and modeling encryption overhead for sensor network nodes. In: WSNA ’03: Proceedings of the 2nd ACM international conference on Wireless sensor networks and applications, ACM, New York, NY, USA, pp 151–159, DOI http://doi.acm.org/ 10.1145/941350.941372
Good T, Benaissa M (2007) Hardware results for selected stream cipher candidates. Tech. rep., eSTREAM project, http://www.ecrypt.eu.org/stream/hw.html
Hillis WD, Steele GL Jr (1986) Data parallel algorithms. Commun ACM 29(12):1170–1183
Kaps JP (2008) Chai-tea, cryptographic hardware implementations of xtea. In: INDOCRYPT, pp 363–375
Karlof C, Sastry N, Wagner D (2004) Tinysec: a link layer security architecture for wireless sensor networks. In: SenSys ’04: Proceedings of the 2nd international conference on Embedded networked sensor systems, ACM, New York, NY, USA, pp 162–175, DOI http://doi.acm.org/10.1145/1031495.1031515
Keutzer K, Newton A, Rabaey J, Sangiovanni-Vincentelli A (2000) System-level design: orthogonalization of concerns and platform-based design. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 19(12):1523–1543
Leander G, Paar C, Poschmann A, Schramm K (2007) New lightweight des variants. In: Fast Software Encryption, Lecture Notes on Computer Science, vol 4593, pp 196–200
Madsen J, Steensgaard-Madsen J, Christensen L (2002) A sophomore course in codesign. Computer 35(11):108–110, DOI http://dx.doi.org/10.1109/MC.2002.1046983
Meiser G, Eisenbarth T, Lemke-Rust K, Paar C (2007) Software implementation of estream profile i ciphers on embedded 8-bit avr microcontrollers. Tech. rep., eSTREAM project, http://www.ecrypt.eu.org/stream/sw.html
Micheli GD, Wolf W, Ernst R (2001) Readings in Hardware/Software Co-Design. Morgan Kaufmann Publishers Inc.
Rabaey JM (2009) Low Power Design Essentials. Springer
Satoh A, Morioka S (2003) Hardware-focused performance comparison for the standard block ciphers aes, camellia, and triple-des. In: ISC, no. 2851 in Lecture Notes on Computer Science, pp 252–266
Vahid F (2003) The softening of hardware. Computer 36(4):27–34
Vahid F (2007b) It’s time to stop calling circuits “hardware”. Computer 40(9):106–108
Wolf W (2003) A decade of hardware/software codesign. Computer 36(4):38–43
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2010 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Schaumont, P.R. (2010). The Nature of Hardware and Software. In: A Practical Introduction to Hardware/Software Codesign. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-6000-9_1
Download citation
DOI: https://doi.org/10.1007/978-1-4419-6000-9_1
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-5999-7
Online ISBN: 978-1-4419-6000-9
eBook Packages: EngineeringEngineering (R0)