Introduction to LPC81x series

I decided to use a LPC812 μC in one of my projects, It’s a Low-Power ARM Cortex M0+ 32-bit μC with a great collection of units and peripherals. 16 KB flash memory, 4 KB SRAM, 12 MHz clock (up to 30 MHz via PLLs), deep sleep/power-down mode

Embedded C: Structure Packing

I want to talk about structure packing in C programming language. This technique reduces the memory consumption of C programs. To read and understand this contents, you need to know the basic knowledge of C programming language.

If you work with memory-constrained embedded systems or operating systems, you need to know and use this technique in your applications, and also it is much more useful if you are working with a large set of data usually results in miss memory limits. You will not be considered an advanced C programmer, If you don’t know this technique. In the future, I will talk about following topics in upcoming posts:

  • Alignment conditions
  • Padding
  • Structure alignment and padding
  • Bitfields
  • Structure reordering


— Recent update: Post “System Call Emulation (SE) Mode” was added.
Hardware simulators are a set of software have been created and developed to help the computer architecture designers, In other words, hardware simulators are computer architecture tools that evaluate processors at the architectural level or they provide to model hardware/system. A good simulator front-end should provide an accurate image of events that occur in a hardware.

In the upcoming posts, I want to introduce one of the most famous computer architecture simulators and briefly describe how to work with it, and also I will explain how to use McPAT and HotSpot alongside gem5 to calculate power consumption and temperature. Table of contents: