Coming back!!

It has been almost 6 months since I posted my last Blog. Adsense sent me a PIN code and that reminds me that I had a blog.. well and someone is reading it..

I should have been constantly updating this blog so to make the content richer.


Code-Excited Linear Preduction(CELP)

CELP -- a voice compression technology.
- 4.8kbps or 2kbps
- 2 time-varying linear recursive filter
* long-delay with 3 coeff, determined by minimizing the mean-squared prediction error after pitch prediction over a 5ms
* short delay with 16 coeff, determined using weighted stabilized covariance method of LPC analysis once every 10ms
- Instantaneous quantizer deteriorate at bitrate below 10kbps, cannot carry digital speech over a single analog voice channel
- 8kHz, 5ms duration for each block, each block consis of 40 samples from one of 1024 possible innoviation sequeunces
- coding scheme: code-book, tree and trelis


about 802.11n

These information is extracted from http://www.deviceforge.com/articles/AT5096801417.html

- define modifications to the Physical Layer and Medium Access Control Layer (PHY/MAC)
- high throughput, 100Mbps throughput at MAC SAP
- backward compatible

Wireless LAN Throughput by IEEE Standard
IEEE WLAN Standard Over-the-Air (OTA) Estimates Media Access Control Layer, Service Access Point (MAC SAP) Estimates
802.11b 11 Mbps 5 Mbps
802.11g 54 Mbps 25 Mbps (when .11b is not present)
802.11a 54 Mbps 25 Mbps
802.11n 200+ Mbps 100 Mbps

Table 1. Comparison of different 802.11 transfer rates. (Source: Intel Labs)

Intel's approach
- Reuse of legacy technologies such as Orthogonal Frequency Division Multiplexing (OFDM), forward error correction (FEC) coding, interleaving and quadrature amplitude modulation (QAM) mapping should be maintained to keep costs down and ease backward compatibility.
- employs multiple antenna systems for both the transmitter and the receiver. This technology is referred to as multiple-input multiple-output (MIMO), or smart antenna systems.
- believes both MIMO technology and wider bandwidth channels will be required to reliably satisfy the higher throughput demands expected from 802.11n.
- fast channel adaptation should be managed at the PHY Layer without MAC interaction. Once the initial adaptation is established, using over-the-air signaling in a timely fashion, the MAC layer will need to establish and maintain adaptation to wireless channel conditions.
- new MAC features that maximize throughput efficiency
* providing with new aggregate exchange sequences.
* allows a responder to aggregate MPDUs in a reverse direction in response to an initiating station transfer without initiating a new transfer.
* able to transfer data to multiple destinations using new MPDU formats.

- resolve information from multiple signal paths using spatially separated receive antennas.
- Spatial Division Multiplexing (SDM) spatially multiplexes multiple independent data streams, transferred simultaneously within one spectral channel of bandwidth.
- requires a separate radio frequency (RF) chain and analog-to-digital converter (ADC) for each MIMO antenna.

Aggregate exchange
- where multiple MAC Protocol Data Units (MPDUs) are aggregated into a single PHY Protocol Data Unit (PPDU).
- aggregate exchange sequences are made possible with a protocol that acknowledges multiple MPDUs with a single block acknowledgement (Block ACK) in response to a block acknowledgement request (BAR).
- eliminates the need to initiate a new transfer for every MPDU



QoS(Quality of Service) issue
- Delay caused by echo and talker overlap
1) Echo
* signal reflection by far end equipment
* significant if round-trip delay > 50ms
* removed by digital filter
2) Talker overlap
* significant if one way delay > 250ms
* source of delay
i) Accumulation delay/Algorithmic delay
Caused by need to collect a frame of voice samples to be processed by the voice coder
ii) Processing delay
Caused by actual process of encoding and collecting the encoded samples inot a packet for transmission over the packet network
iii) Network delay
Caused by physical medium and protocal used to transmit the voice data
iv) Jitter
Caused by the need to reove variable interpacket timing. Require collection packets and holding them long enough to allow the slowest packet to arrive.

- Lost packet compensation
* IP network do not guarantee service
i) interpolate for lost packets by replaying the last packet received.
ii) send redundant information

Voice compression
- PCM, Pulse Code Modulation, Standard ITU-T G.711, 64kbps
- ADPCM, Adaptive differential PCM, Standard ITU-T G.726, 32kbps
- LD-CELP, Standard ITU-T G.728, 16kbps
- CS-ACELP, Standard ITU-T G.729 and G.729a, 8kbps
- MP-MLQ, Standard ITU-T G.723.1, 6.3kbps, Truespeech
- ACELP, Standard ITU-T G.723.1, 5.3kbps, Truespeech
- CELP, Federal-Standard-1016, 4.8kbps
- LPC-10, 2.5 kbps

Accumulation delay for different codec
- G.726 .125ms
- G.728 .5ms
- G.723.1, G.729 0ms

- Real-time protocol needed (typically RTP over UDP over IP)
* UDP, lighter than TCP, less delay
- Signaling protocol to call users: ITU-T H323
* Allow a variety of elements talking each other:
i) Terminals, clients:
** initialize VoIP connection.
ii) Gatekeepers
** address translation service, to use names instead IP addresses
** admission control, to allow or deny some hosts or some users
** bandwidth management
iii) Gateways
** points of reference for conversion TCP/IP - PSTN.
iv) Multipoint Control Units (MCUs) to provide conference.
v) Proxies Server also are used.


Implementation of mobile ad hoc networking

This article is based on the work of Andreas Tonnesen in University of Oslo. Please visit to OLSR.org for full details and downloadable

MANET (Mobile Ah-hoc NETworking)
- GSM, WLAN: mobile nodes communicate directly with some centralized access point.
- Constrast: multi-hop approach
- Multi-hop: nodes can communicate by utilizing other nodes as relays for traffic
- Challenge and major different is in the routing protocol
- Example of application: Mesh-networking with wifi hardware

- only defined infrastructure mode and ad-hoc mode
- lack of multi-hop

Microsoft approach
- information at http://research.microsoft.com/mesh/

- implemation of Mesh Connectivity Layer (MCL)
- MCL is a loadable Microsoft Windows driver.
- virtual network adapter, the rest of the system the ad-hoc network appears as an additional (virtual) network link.
- An interposition layer between layer 2 (the link layer) and layer 3 (the network layer).
- To higher layer software, another Ethernet link
- To lower layer software, another protocol running over the physical link.

IETF working group

- Internet Engineering TaskForce set down working group for MANET routing
- 3 proposal are accepted as experiment when the article by Andreas Tonnesenis being written
* Request for Communication (RFC) or Ad hoc On Demand Distane Vector (AODV)
* Optimzed Link State Routing (OLSR)
* Topology Dissemination Based on Reverse-Path Forwarding (TBRPF)
- Microsoft's approach is based on a modified version of Dynamic Source Routing Protocol (DSR) that is called Link Quality Source Routing (LQSR)
- DSR operate entirely "on demand"

MANET Routing Protocals
- Reactive Protocols, example: AODV
* AODV describled in RFC 3561
* set up route on demand
* Generate Routing Request (RREQ)
* inital delay when initiatign such communication
* three types of control messages
2. Route Reply (RREP)
3. RERR, notify other nodes of the loss of link
- Proactive Protocals, example: OLSR
* whole network in theory known to all node
* table driven
* link-state information is fboded throughout the network
* large overhead
* low initial delay
* OLSR is optimzed to preserve bandwidth by mulitpoint relaying (MRP)
* OSLR defined 3 basic type of control message
1. HELLO for neighbor sensing and MRP calculation
2. TC, Topology Control messages are the link state signaling
3. MID, Mulitple Interface Declaration messages are transitted by nodes running OLSR on more than one interface
- Hybrids, example ZRP
* combined approach of proactive and reactive
* ZRP divided the topology into zones and seek to utilize different routing protocols within and between the zones based on the weakness and strengths of these protocals.
* Size of zones is defined by a parameter r decrible the radius in hop.


Fuzzy logic and robotics

Fuzzy Logic
- provides a simple way to arrive at a definite conclusion based upon vague, ambiguous, imprecise, noisy, or missing input information
- rule-based, example of rules is "IF (process is too hot) AND (process is heating rapidly) THEN (cool the process quickly)"
- Command-feedback is known as error
- Rate-of-change-of-error is known as dot-error
- Error and dot-error were modified by the adjectives "negative", "zero", and "positive"
- rule structure and rule matrix are used to define the rules for operation, example of rule structure and rule matrix.
- Membership functions associates a weighting with each of the inputs that are processed, define functional overlap between inputs, and ultimately determines an output response.
- shape of membership function of triangular is common, but bell, trapezoidal, haversine and, exponential have been used.
- degree of membership of various error inputs and dot-error inputs determine the output.
- logical products for each rule must be combined or inferred
- and defuzzilize for crisp output generation
- logical products is combined or inferred by max-min'd, max-dot'd, averaged or root-sum-squared method.
- fuzzy centroid such as 63.4% Cooling is obtained by defuzzification


802 standards(1)

Terms and acronyms
RM - reference model
IM - Implementation model
PDU - Protocal Data Unit
LSAP - Link Service Access Point
MSAP - MAC Service Access Point
PhSAP - Physical Service Access Point
AUI - Attachment Unit Interface
PMA - Physical Medium Attachment
MDI - Medium Dependent Interface
PHY - Physical layer
SDE - Secure Data Exchange

Multiple-link service access points provide interface ports to multiple higher layer users above the LLC sublayer

MSAP is a single access point interface to LLC. MSAP is identified by a single individual MAC address.

Type of connection defined in LLC sublayer
- unacknowledged connectionless-mode (type 1)
* without the need for the establishment of logical link
* does not provide acknowledgements for these LLC frames
* does not provide any flow control or error recovery

- connection mode (type 2)
* logical link is establisted
* information is delivered in sequence, error recovery and flow control is provided

- acknowledged connectionless-mode (type 3)
* no logical link is establisted
* flow control and error recovery by acknowledgement
* allows one station to poll another for data

LLC includes SDE entity

MAC sublayer
- Packet based, connectionless mode (datagram style)
- MAC frame is the data unit
- Functions includes
* Frame delimiting and recognition
* Addressing of destination stations
* Conveyance of source-station addressing information
* Transparent data transfer of LLC PDUs
* Protection against error by means of generating and checking the frame check sequences
* Control of access to the physical medium
*Error rate required
- less than 8 x 10^-8 per octet.


Question : AP and adhoc mode [open for discussion]

This is an interesting question:-

Can a wi-fi device communicating with an AP while at the same time communicating with another wi-fi device via adhoc-mode (The two wi-fi devices are not talking via the AP)?

I read an article on a technology, known as mesh networks.



I visited the website www.meshnetworks.com. but it seems to me the website has been moved.

In a meshnetwork
- every wi-fi device act as a router to the AP.
- instead of communicating to the nearest AP, device communicate with nearby device and hop through it.
- a device can hop to an AP after several hop.
- dramatically increase the network coverage
- reduce link distance,increase network throughput.

I am not thinking of a meshnetwork application, but rather a very simple, wi-fi headset that can communicating with a computer using ad-hoc mode, while at the same time won't preventing the computer to communicate to the network via a AP.

If any one who know the answer to my question, please kindy leave a comment. Thanks.



1.Application layer
6.Data Link

Data Link
-MAC address
* MAC-48 specification, specify a 48-bit address.
* An example of a MAC-48 address would be "00-08-74-4C-7F-1D"
* MAC addresses are permanently attached to a product and are also known as burned-in addresses(BIA), "Universally Administered Addresses"(UAA) or Physical address
* The first three octet are known as the Organizationally Unique Identifier and is unique to organization which issue the address
* MAC address is commonly used by services provider and network administrator to bound a certain services or network authority to a computer.
* MAC addresses are permanent by design. It is possible to modify, or "spoof", the MAC address that is reported by the OS.
* the MAC address can be changed in Linux by

/etc/init.d/networking stop
ifconfig eth0 hw ether 02:01:02:03:04:08
/etc/init.d/networking start

-IP address
An unique number that devices used to identify and locate each other in a computer network. Similar to a mailing address in read world.
* Translate to domain name by domain name server (DNS) for easy memorization by human.
* Example of and IP address is
* Some of the IP address are reversed for private network, i.e. if you setup a private network, you should assign this set of IPs to identify each computer on your network.

IP address reversed for private network
NameIP addressnumber of IPs
24-bit block10.0.0.0 –,777,215
20-bit block172.16.0.0 –,048,576
16-bit block192.168.0.0 –,535

* IPv4 are commonly used, however, the 32-bit addressing space are running out and hence IPv6 with 128-bit addressing space are developed, but not yet widely deployed.

Data packets protocol
-Date packets
each packet contains header and payload to transport data
-TCP, Transmission control protocol
* core protocols in internet
* guarantees reliable, in-order delivery
* byte stream are divided into segments (size is controlled by maximum transmission unit (MTU))
* each packet has a sequence number to make sure data are delivered and in correct order
* acknowledgement is needed
* error checking by checksum

UDP, User datagram protocal
* TCP is too heavy for real time application such as VoIP, video streaming
* UDP no control over the order the packets are received and no guarantees on whether the packet is delivered, those issues has to be handled by upper layer in the OSI/RM.


An introduction to Wi-Fi

802.11 defines
-the Physical and Data Link layer

Date link layer is defined in two sub-layer
-Logical Link Control -> 802.2
-MAC -> 802.1

BSS, Basic Service Set
- is 2 or more stations communication with each other
IBSS, Independent BSS or Ad-hoc Network
- is a stand alone BSS
DS, distribution system
- connects 2 more more BSS
ESS, Extended Service Set
- is a system of BSS connected with DS
- Provide connection to existing wired networks

Types of services provided

- Station Services (SS)
*WEP, Wired Equivalent Privacy
>MAC Service Data Unit (MSDC) Delivery

- Distribution System Service (DSS)
> Association
* 1 station can only associate with 1 Access Point (AP)
> Reassociation
* switch association from one AP to another
> Disassociation
> Distribution
* Get data from the sender to the intended receiver
> Integration
* Intergation, distribution to a Portal

Physical layer
- 2.4GHz band, 14 22MHz Channels with overlapping, 3 non-overlapping channels
- 11Mbps, 5.5Mbps, 2Mbps, 1Mbps

date rateSequenceModulationSymbol per second
11Mbps8 bits per carrierQPSK1.375MSps
5.5MbpsCCK,4 bits per carrierQPSK1.375MSps
2MbpsBarker Sequence,11 bit chipping for each bitQPSK1MSps
1MbpsBarker Sequence,11 bit chipping for each bitBPSK1MSps

- CCK - Complementary Code Keying, consists of a set of 64 8-bit code words
- Dynamic rate shifting, data rates automatically adjusted to compensate noisy environment.

-5GHz band, 8 non-overlapping 20MHz channel
-54Mbps, 48Mbps, 36Mbps, 24Mbps, 18Mbps, 12Mbps, 9Mbps, 6Mbps
-less crowded than 2.4GHz band
-Not directly compatible with 802.11b

-2.4GHz band
-2 optional mode, CCK mode used by 802.11b, OFDM mode used by 802.11a
-frequency band crowded, slower than 802.11a

Data link layer
-802.3 Ethernet LANs, Carrier Sense Mulitple Access with Collision Detection
-802.11 Wi-fi, Carrier Sense Mulitple Access with Collision Avoidance (CSMA/CA) or
-Distributed Coordination Function (DCF)
-Optional Request to Send/Clear to Send (RTS/CTS)
-CRC checksum
-Packet fragmentation
-Point Coordination Function (PCF) for time bounded data
>access point polling, maximum latency is guaranteed

IEEE Standard 802

- IEEE Standard for local and Metropolitan Area Networks
- Packet based, transmission in sequence of data octets, length is variable
> Contrast to cell, data in shorter, fixed-length unit
> Contrast to isochronous, data as a steady stream of octets

- LLC, logical link control

802.11 (Wi-fi)
- Wireless Medium Access Control (MAC) and Physical layer specification
802.16 (Wi-Max)

- 5GHz, OFDM (orthogonal frequency division multiplex), 54Mbps
- 2.4GHz, DSSS (direct-sequence spread spectrum), 11Mbps
- 2.4GHz, OFDM, 54Mbps
- Provide QoS (Quality of service)


Request for help on Wi-fi

Dear readers,

My boss wants me to source some of the wi-fi modules in the market, and if you know any good and cheap wi-fi module or any internet resource regarding to wi-fi, please leave me a message on this blog.

Also I will be studying on wi-fi from now on.


e Duczer.



- Was adopted in December 1990 for use in the Integrated Services Digital Network by CCITT Study Group XV.
- Most of the international video coding standards, MPEG-1, MPEG-2/H.262 and H.264 are based on H.261.
- Has a total latency for compression and decompression less than 150ms.
- Bitrates are multiple of 64kbps, and is also known as p * 64 compression.

In H.261,
- Transformation block is 8 * 8 DCT used in JPEG lossy conpression modes.
- The quantization and Huffman code same as these in baseline JPEG.
- The step sizes associated with each of the quantizers are uniformily scaled from one DCT to another to avoid excessive fluctuations in bit rate.
- The chrominance components (U and V) are subsampled by two.
- 4 luminance block, a U, V pair, (Y:U:V is 4:1:1 due to subsampling) is known as a macro-block.
- Macro-block can either be inter-coded and intra-coded.
- Intra-coded block are coded independently of previous frame.
- Inter-coded block use MC predictive feedback loop.
- Motion estimation (ME) is based on 16 * 16 pixel blocks
- Each Inter-coded macro-block is assigned one motion vector.



- a flexible compression standard
- defines a bit stream syntax
- configuration of a variety of different buliding blocks
- 8 x 8 2D DCT
- uniform scalar quantization
- Huffman or adaptive arithmetic coding
> most implementation only support Huffman coding
> conditional coding, i.e. code words and aritimetic probability tables depend upon a context
> conditional coding of arithmetic coding is complex and usually not supported
- DPCM used
- run-length coding with zig-zag scanning order
- Support progessive coding, i.e DCT block is coded roughly in 1st pass and refine in subsequent passes, enable a partial reconstruction of the image without decode all bit stream

Rate Distortion Performance - David Scott Taubman, "Directionality and Scalability in Image and Video Compression", Ph.D. Dissertation, Dept of Electrial Engineering and Computer Sciences, University of California at Berkeley

Image compression (2)

Predictive Feedback techniques improve the compression performance.
- Delta Pulse Code Modulation (DPCM) are completely used feedback strategy.
- only sending the difference of current data and some previously stored data via.
- the difference in time of current data and previously stored data is know as displacement vector
- also known as Conditional Replenishment (CR)
- in Motion Compensation (MC) the displacement vector is not a constant and is usually encoded as side information in the bit stream


Image compression (1)

The following is usually used to measure the performance of a image compression scheme.

1) average bit per pixel, bpp
- measure how much compression you can get.

2) bit rates, bits per second, bps
- important for implementation, higher bit rates require more memory and data transfer in implementation, lower the better.

3) distortion
- by mean of calculating the mean square error (MSE)

4) robustness to error

5) scalability

Common image compression standards include JPEG, JPEG2000, MPEG-1 (VCD), MPEG-2(DVD), MPEG-4.

Please notice the MP3 is not equal to MPEG-3, MP4 is not equal to MPEG-4. MP3 are usually referring to audio file compressed in MPEG-1 layer-3 format. MP4 are a file format defined in MPEG standard (I don't remember which part of MPEG defines MP4).

Important technologies in image compression are:

1) Discrete Cosine Transform (DCT)
2) Subband decomposition
- decompose and synthesis data using subband filter
- DCT can be regarded as a special kind of subband filter, with no overlapping in bands. subband decomposition are usually reserved to descript decomposition scheme with overlapping.
- Due to the overlapping characteristic, subband decomposition usually have a less blocking when compared with block transform.
3) Quantization, where lossy compression occurs
- scaler quantization
- vector quantization, codebook inplementation
4) Coding and Encoding
- Fixed length coding
> so effective
> easy in implementation
> scalable
> offer maximum error resilience
- Variable length coding
> e.g. Huffman coding
- Can be measure performance by how close the actual bit rate when compared with the entropy
> entropy : the minimum number of bits that is necessary to carry a data stream with a definited probability


We talk about really technical things in this blog. This is primarily my personal note when I am studying my subject -- electrical engineering. This cover wide aspect of issues, including signal processing, RF and others.

The first topic is image processing -- DCT, sub-band filtering and many others image processing released issue. If you have any thing to share, please leave me a message.