Using The I2C Bus
The I2C bus is used for communications between individual integrated circuits located on the same PCB. The I2C protocol supports multi-master, multi-slave communication, which means you can add a lot of functionality to your design. More ...
The Microcontroller's Asynchronous Serial Interface
An Asynchronous Serial Interface sends data one bit at a time, as apposed to a parallel interface which send one byte or one word at a time, and asynchronous means it sends them when its ready, without reference to a clock signal. More ...
Binary Number Representation and Binary Math
Computers perform all of their amazing work with only two voltage levels, one representing binary 0, the other representing binary 1. This article describes how to perform binary addition and subtraction. More ...
Multi-Processor Scheduling
Here, we discuss several concerns in multiprocessor scheduling in the context of Multicore, Multithreaded core, NUMA (Non-uniform memory access), and Heterogeneous multiprocessing architectures. More ...
Difference between Stack, Heap, and Queue
Stack, heap, and queue are ways that elements are stored in memory. Stack elements are added to the top of the stack, and removed from the top of the stack. The mnemonic LIFO is used to describe a stack (Last-In-First-Out). With a queue, the first one in is the first one out. The mnemonic FIFO is used to describe a queue. A heap is an area of memory where elements can be stored and removed in any order. More ...
Intel's Core i7 Processors
Core i7 is a family of Intel quad core processors, that is, they have four processors on a single silicon chip. All four processor cores and all memory caches, including a 64K L1 cache, a 256K L2 cache, and a shared L3 cache are located on one chip. The memory is also located on the same chip. More ...
Microprocessor Registers
To a large extent the operation of a microprocessor involves loading, transferring, and manipulating the contents of registers. In this article you learn about the functions, and purposes of the register set of the Intel 8086 microprocessor. More ...
Introduction to Boolean Algebra
Boolean algebra is a system of mathematics in which the values of the variables can take on only one of two values, either 0 or 1. Similar to regular algebra, Boolean algebra can be used to simplify a mathematical expression. Since computer logic is also a system in which the values of the inputs and outputs can take on only one of two values, Boolean algebra can be used to simplify logic circuits. More ...
AMD's Phenom Processor
AMD released the first Phenom processor in 2007. Unlike Intel's Core 2 Quad processors, which are a multi-chip module (MCM) design, AMD's Phenom processors had all cores on the same silicon die. More ...
Digital Logic Transfer Characteristics
In the real world, gates don't transfer logic levels instantaneously. The time it takes for electrons and holes to move through the semiconductor material (called propagation delay) in CMOS are less than 100 ps (pico seconds), but there are other delays caused by resistance, capacitance, and inductance. More ...
Multicore Programming
A recent trend in system design is to place multiple computing cores on a single chip. Each core appears as a separate processor to the operating system. We call these multicore or multiprocessor systems. More ...
Multiuser Operating System Functions
Some operating system functions like resource allocation, accounting, protection and security exist not for helping the user, but rather for ensuring the efficient operation of the system itself. More ...