Thursday, February 28, 2008

free download pdf file for Biochemical Fuel Cells pdf

Free pdf file for Biochemical Fuel Cells
microbial-based biofuel cells, microbial bioreactors producing h2 for conventional fuel cells, enzymatic biofuel cells, anodes for biofuel cells based on enzynme-catalyzed oxidative reactions,biofuel cells based on layered enzyme-electrodes,integrated microbial-based biofuel cells producing electronically active metabolites in the anodic compartment of biofuel cells, cathodes for biofuel cells based on enzyme-catalyzed reductive reactions.

Biomass

Biomass

farm energy from manure fact sheet, pellet your home with wood pellets fact sheet, heating your home with wood pellets fact sheet, heating your home with wood fact sheet, meeting wood industry energy needs with waste wood fact sheet, paper pellets for industrial fuel fact sheet, turning wastewater into energy fact sheet, muscoda protein products case study, sunny slope gardens case study, quantum dairy case study, new savings from an old boiler barron area school district wood boiler automation project, superior kilns waste wood boiler case study, devenport home focus pilot program case study, samsel Ltd biomass technology case study, Ag biogas casebook sept 2002 case study, Ag boigas casebook 2004 update.anaerobic digester methane to energy, wisconsin wood residue brokers, corn furnace program feasability study for wisconsin, technical research supplement to the corn furnace feasability study for wisconsin.

Biofuels

Biofuels
biodiesel, biogas, biomass, pyrolysis of biomass, landfill gas analyzer, landfill sites, measurements in biogas, methane digester, biodigester construction in the philippines, renewable energy, biogas.ph, the environment site.

Biodiesel

Biodiesel
biodiesel, renewable diesel and co-processed, renewable diesel fact sheet, RFS renewable fuel standard, fuel quality information, biodiesel specification, biodiesel basics, definitions, FAQS, OEM statements, fuel fact sheets, guide to buying biodiesel, biodiesel production esimate graph, biodiesel handling/use guidelines, reports database, press releases, subscribe to the biodiesel bulletin, become a biodiesel a alliance/backer.

Methods for Converting Biomass to Energy

Methods for Converting Biomass to Energy
burning, alcohol fermentation, anaerobic digestion, prrolysis.

Biomass Types

Biomass Types
waste biomass, forestry residue, animal farming farm slurries, poultry litter, cattle farming, pig farming, slaughterhouse and fishery waste, organic municipal solid waste, sewage waste, energy crops, short rotation coppice, miscanthus, pellets, woodchips, other biogenous fuels.

Biomas program



Biomas program

ABC's of biofuels, ABC's of biopower, ABC's of bioproducts, student glossary, bionergy conversion factors, the energy information administration's kid's page, CANMET energy technology center's kid's fun, energy quest website by the california energy commission.

Biomas Energy

Biomas Energy
biomass energy overview,biomass technology chart, biomass energy technology, boigas technology, biomass energy incentives, biomass energy project guide.

Behavioral & RTL

Multi-cycle functionality:
It is a fundamental characteristic of synthesizable RTL code that the complete functionality of each clocked process must be performed within a single clock cycle. Behavioral synthesis lifts this restriction. Clocked processes in synthesizable behavioral code may contain functionality that takes more than one clock cycle to execute.

The behavioral synthesis algorithms will create a schedule that determines how many clock cycles will be used. The behavioral synthesis tool automatically creates the finite state machine (FSM) that is required to implement this multi-cycle behavior in the generated RTL code.

In a traditional RTL design process, the designer is responsible for manually decomposing multi-cycle functionality into a set of single-cycle processes. Typically this entails the creation of multiple processes to implement the finite state machine, and the creation of processes for each operation and each output.

A behavioral synthesis tool performs this decomposition for the designer. The multi-cycle behavior can be expressed in a natural way in a single process leading to more efficient design specification and debug.

Loops:
Most algorithms include looping structures. Traditional RTL design imposes severe restrictions on the use of loops, or prohibits them outright. Some RTL logic synthesis tools permit for loops with fixed loop indices only. The loop body is restricted to being executed in a single cycle. Parallel hardware is inferred for each loop iteration.

These restrictions require the designer to transform the algorithm into a multi-cycle FSM adding substantial complexity to the designer's task. Behavioral design manages this complexity for the designer by permitting free use of loops. "While" loops and "for" loops with data-dependent loop indices are fully supported in a behavioral design flow. Loop termination constructs such as the C language "break" and "continue" keywords are permitted.

Memory access:
In general, reading and writing to memories requires complex multi-cycle protocols. In RTL design these are implemented as explicit FSMs. Worse, these accesses must usually be incorporated in an already complex FSM implementing an algorithm.

Behavioral synthesis permits them to be represented in an intuitive way as simple array accesses. An array is declared in the native syntax of the behavioral language in use, tool directives are provided to control the mapping of the array to a physical memory element, and the array elements are referenced using the array indexing syntax of the language. The behavioral synthesis tool instantiates the memory element and connects it to the rest of the circuit. It also develops of the FSM for the memory access protocol and integrates this FSM with the rest of the algorithm.

Monday, February 25, 2008

Free Download - Electronics, digital, tesla coil,thermal, eBook, Satellite, radar

An introduction to digital audio butterworth heinmann 1994

http://rapidshare.de/files/22586467/Watkinson_J_-_An_Introduction_to_Digital_Audio__Butterworth_Heinmann_1994_.pdf

Solid state testa coil
http://rapidshare.de/files/22586498/_unknown__Solid_State_Tesla_Coil.pdf

Thermal analysis of a transistor
http://rapidshare.de/files/22586882/Accillaro-Cidronali-Zani_-_Thermal_Analysis_of_a_Transistor.rtf

Radar technology encyclopedia artech house 1998
http://rapidshare.de/files/22587310/Barton___Leonov_-_Radar_Technology_Encyclopedia__Artech_House_1998_.pdf

Broadband telecommunications handbook Mc-graw hull 2000
http://rapidshare.de/files/22588606/Bates_-_Broadband_Telecommunications_Handbook__Mcgraw-Hill_2000_.pdf

The satellite communication applications handbook 2nd edition artech house 2004
http://rapidshare.de/files/22588814/Elbert__Bruce_R._-_The_Satellite_Communication_Applications_Handbook_2nd_Ed__Artech_House_2004_.pdf

Automaated fingerprint identification system academic press 2005
http://rapidshare.de/files/22589829/Komarinski_-_Automated_Fingerprint_Identification_Systems__Academic_Press_2005_.pdf

Radar system analysis and design using matlab crc press
http://rapidshare.de/files/22590163/Mahafza__Bassem_R._-_Radar_Systems_Analysis_and_Design_Using_MatLab__CRC_Press_.pdf

Newton's telecom dictionary 20th cmp book 2004
http://rapidshare.de/files/22590752/Newton_H._-_Newton_s_Telecom_Dictionary_20th__CMP_Books_2004_.chm

Wi-Fi handbook building 802.11b wireless networks MC-grawhill
http://rapidshare.de/files/22590976/Ohrtman___Roeder_-_Wi-Fi_Handbook._Building_802.11b_Wireless_Networks__McGraw-Hill_2003_.chm

free download Digital Design books

Logic Design By Wai Kai Chen

http://rapidshare.com/files/12382669/logic_design.rar
http://mihd.net/ngh8p0


Fourier Transforms in Radar and Signal Processing (Artech House Radar Library)

http://rapidshare.com/files/14475484/1580531741.rar
http://mihd.net/9che4m


Introduction to Digital Signal Processing and Filter Design
By B. A. Shenoi

http://rapidshare.com/files/8096928/0471464821.zip

Understanding Digital Signal Processing
By Richard G. Lyons

http://mihd.net/ty4aro
http://rapidshare.com/files/11309268/Understanding_Digital_Signal_Processing_0201634678.rar


Digital Communications, 4th edition, 2000-08
By John Proakis

http://mihd.net/ciwzov

Analog and Digital Control System Design: Transfer-Function, State-Space, and Algebraic Methods
By Chi-Tsong Chen
http://rapidshare.com/files/3617284/Analog_and_Digital_Control_System_Design.rar

Digital Integrated Circuits: A Design Perspective
By Jan M.Rabaey
http://mihd.net/7.2187/Digital_Integrated_Circuits_A_Design_Perspective__2nd_Ed.pdf.html



The VLSI Handbook
By Wai-Kai Chen

http://rapidshare.de/files/20311048/Chen_-_VLSI_Handbook__CRC_Press_1999_.rar


Verilog HDL (2nd Edition)
By Samir Palnitkar
http://mihd.net/r01wld

VHDL: Design
General Tutorials

http://rapidshare.de/files/34589343/IEEE_1076_2004_LRM.pdf

http://rapidshare.de/files/34589342/IEEE_1076_2002_LRM.pdf

http://rapidshare.de/files/34589341/IEEE_1076.4_2004_VITAL_ASIC.pdf

http://rapidshare.de/files/34589340/IEEE_1076.6_2004_RTL_SYNTHESIS.pdf

http://rapidshare.de/files/34589339/IEEE_1076.1.1_2004_analog_n_mixed.pdf

http://rapidshare.de/files/34589338/IEEE-1164_1993.pdf

Operational Amplifiers
By Arpad Barna Dan I. Porat

http://mihd.net/cqkri5

Free Download Fundamentals of digital television pdf

Fundamentals of digital television

http://rapidshare.com/files/79940617/Fundamentals_of_Digital_Television.rar

Free Download PID controllers for time delays system pdf

PID controllers for time delays system

http://rapidshare.com/files/80127834/PID_Controllers_for_Time_Delay_Systems.ra

free download Printed circuit boards

Printed circuit boards
http://rapidshare.com/files/79573639/Printed_Circuit_Boards.rar.html

Free Download Digital and multimedia pdf

Digital and multimedia

http://rapidshare.com/files/80269135/Handbook_of_Digital_and_Multimedia_Forensic_Evidence.rar

Free Download - Traceable temperatures pdf

Traceable temperatures
http://rapidshare.com/files/78967738/Traceable_Temperatures.rar

Free Download - An introduction to digital video pdf

An introduction to digital video
http://rapidshare.com/files/79347193/anintodivi.rar

Free Download - The story of semiconductors pdf

The story of semiconductors

http://rapidshare.com/files/79201172/The_Story_of_Semiconductors.rar

Free Download - The radio station pdf

The radio station

http://rapidshare.com/files/79045830/therast.rar

Free Download - Spice for power electronics and electric power pdf

Spice for power electronics and electric power

http://rapidshare.com/files/58837101/SPICE_for_Power_Electronics_and_Elec

Free Download - Optimal control of induction heating processes pdf

Optimal control of induction heating processes

http://rapidshare.com/files/79127336/Optimal_Control_of_Induction_Heating_Processes.rar

Free Download - Radio system design for telecommunications pdf

Radio system design for telecommunications

http://rapidshare.com/files/79068076/rasydefote.rar

Free Download - Fundamentals of electrical dives pdf

Fundamentals of electrical dives
http://rapidshare.com/files/78480226/140205503X.rar

Free Download - Power quality pdf

Power quality

http://rapidshare.com/files/78762033/Power_Quality.rar

Free Download - Telecom dictionary pdf

Telecom dictionary
http://rapidshare.com/files/77945809/Wiley.Websters.New.World.Telecom.Dic

Free Download - Digital control of electrical dives pdf

Digital control of electrical dives
http://rapidshare.com/files/78480224/0387259856.rar

Free Download - Digital photography and imaging pdf

Digital photography and imaging

http://www.paid4share.com/file/1141/1588802639-rar.html

Free Download - PCB, controller, digital, semiconductors, radio,

Printed circuit boards
http://rapidshare.com/files/79573639/Printed_Circuit_Boards.rar.html


PID controllers for time delays system
http://rapidshare.com/files/80127834/PID_Controllers_for_Time_Delay_Systems.rar

Fundamentals of digital television
http://rapidshare.com/files/79940617/Fundamentals_of_Digital_Television.rar

Digital and multimedia
http://rapidshare.com/files/80269135/Handbook_of_Digital_and_Multimedia_Forensic_Evidence.rar

The story of semiconductors
http://rapidshare.com/files/79201172/The_Story_of_Semiconductors.rar

An introduction to digital video
http://rapidshare.com/files/79347193/anintodivi.rar


Traceable temperatures

http://rapidshare.com/files/78967738/Traceable_Temperatures.rar

Spice for power electronics and electric power
http://rapidshare.com/files/58837101/SPICE_for_Power_Electronics_and_Electric_Power.pdf

The radio station
http://rapidshare.com/files/79045830/therast.rar


Radio system design for telecommunications

http://rapidshare.com/files/79068076/rasydefote.rar

Optimal control of induction heating processes
http://rapidshare.com/files/79127336/Optimal_Control_of_Induction_Heating_Processes.rar

Power quality
http://rapidshare.com/files/78762033/Power_Quality.rar

Fundamentals of electrical diveshttp://rapidshare.com/files/78480226/140205503X.rar

Digital control of electrical dives
http://rapidshare.com/files/78480224/0387259856.rar

Telecom dictionary
http://rapidshare.com/files/77945809/Wiley.Websters.New.World.Telecom.Dictionary.Oct.2007.eBook-BBL.rar

Digital photography and imaging
http://www.paid4share.com/file/1141/1588802639-rar.html

free download Dielectric books

Dielectrics in Electric Fields
By Gorur G. Raju
http://rapidshare.com/files/11586183/0824708644.rar

Microwave Dielectric Behaviour of Wet Soils
By Jitendra Behari
http://rapidshare.com/files/1493337/Microwave_Dielectric_Behavior_of_Wet_Soils.rar

Electrical Properties of Polymers
By Evaristo Riande
http://rapidshare.com/files/20097987/2464.EPoP.zip

Dielectric Phenomena in Solids
By Kwan Chi Kao
http://mihd.net/zm6xjg

Handbook of Semiconductor Interconnection Technology
By Geraldine C. Schwartz
http://rapidshare.com/files/19512494/1574446746.rar

Diagram Studio

Diagram Studio represents a powerful application designed to create professional-looking business, technical drawings and illustrations for your documents quickly and easily. Diagram Studio is the ideal program for creating a wide variety of flowcharts, organization charts, and diagrams.Link :

http://rapidshare.com/files/51323931/Diagram_Studio_v5.0_by_REVENGE.rar

other link to download:

http://mihd.net/lt7eng

free download Wavelets books

The Illustrated Wavelet Transform Handbook

By Paul S Addison
http://mihd.net/2r0dbt


Wavelet Analysis The Scalable Structure of Information
By Howard L. Resnikoff
http://mihd.net/4h6t2b


Introduction to Random Vibrations, Spectral and Wavelet Analysis
By D.E. Newland
http://mihd.net/d5lqn3


Affine Density in Wavelet Analysis
By Kutyniok Gitta
http://mihd.net/thyfzp


A Wavelet Tour of Signal Processing
By Stéphane Mallat
http://mihd.net/u6wb0t


An Introduction to Wavelet Analysis
By David F. Walnut
http://mihd.net/zq547v


Wavelet Methods for Time Series Analysis
By Donald B. Percival
http://mihd.net/xo4fka


Statistical Modeling by Wavelets
By Brani Vidakovic
http://mihd.net/4ok08a


Wavelet Analysis and Applications
http://mihd.net/bhklyc


A Primer on Wavelets and Their Scientific Applications
By James S. Walker
http://mihd.net/0qjia6


First Course in Wavelets with Fourier Analysis
By Albert Boggess
http://mihd.net/fac460

When are DFT and Formal verification used?

DFT:

  • manufacturing defects like stuck at "0" or "1".
  • test for set of rules followed during the initial design stage.

Formal verification:

  • Verification of the operation of the design, i.e, to see if the design follows spec.
  • gate netlist == RTL (Equivalence checking)
  • using mathematics and statistical analysis to check for eqivalence.

232Analyzer

232Analyzer
Designing / debugging a communication project can be very stressful and time-consuming, many software / site engineers get stuck on the protocol before they can actually control a serial device (RS232, RS485, RS422, Modbus, PLC, SCADA, etc.).

http://rapidshare.com/files/65335620/232Analyzer_v5.1.rar

Wire load models

Wire loading models contain all the information required by compile to estimate interconnect wiring delays.

A typical Wire load model definition contains: area, resistance, capacitance, slope and fanout. All these attributes are given per unit length wire. Slope value is used to characterize linear fanout.

Generally wire load models are used in ASIC design. These wire load models will contain statistical values which are used in pre-layout simulation of ASIC. Since we are extracting resistance(R), capacitance(C) values in back end after place and route(P&R) phase we need to perform pre-layout simulation before P&R.

Volume I - DC BOOK

Thursday, February 21, 2008

free download The.Microchip.PIC.2007.

http://rapidshare.com/files/76020975/Microcontroller.Programming.The.Microch

Right triangle trigonometry

A right triangle is defined as having one angle precisely equal to 90o (a right angle).

Trigonometric identities

H is the Hypotenuse, always being opposite the right angle. Relative to angle x, O is the Opposite and A is the Adjacent.

"Arc" functions such as "arcsin", "arccos", and "arctan" are the complements of normal trigonometric functions. These functions return an angle for a ratio input. For example, if the tangent of 45o is equal to 1, then the "arctangent" (arctan) of 1 is 45o. "Arc" functions are useful for finding angles in a right triangle if the side lengths are known.

The Pythagorean theorem

Non-right triangle trigonometry

The Law of Sines (for any triangle)

The Law of Cosines (for any triangle)

Trigonometric equivalencies

Hyperbolic functions

Note: all angles (x) must be expressed in units of radians for these hyperbolic functions. There are 2π radians in a circle (360o)

Questions to ask before proceeding

  • Has the system ever worked before? If yes, has anything happened to it since then that could cause the problem?
  • Has this system proven itself to be prone to certain types of failure?
  • How urgent is the need for repair?
  • What are the safety concerns, before I start troubleshooting?
  • What are the process quality concerns, before I start troubleshooting (what can I do without causing interruptions in production)?

These preliminary questions are not trivial. Indeed, they are essential to expedient and safe troubleshooting. They are especially important when the system to be trouble-shot is large, dangerous, and/or expensive.

Sometimes the troubleshooter will be required to work on a system that is still in full operation (perhaps the ultimate example of this is a doctor diagnosing a live patient). Once the cause or causes are determined to a high degree of certainty, there is the step of corrective action. Correcting a system fault without significantly interrupting the operation of the system can be very challenging, and it deserves thorough planning.

When there is high risk involved in taking corrective action, such as is the case with performing surgery on a patient or making repairs to an operating process in a chemical plant, it is essential for the worker(s) to plan ahead for possible trouble. One question to ask before proceeding with repairs is, "how and at what point(s) can I abort the repairs if something goes wrong?" In risky situations, it is vital to have planned "escape routes" in your corrective action, just in case things do not go as planned. A surgeon operating on a patient knows if there are any "points of no return" in such a procedure, and stops to re-check the patient before proceeding past those points. He or she also knows how to "back out" of a surgical procedure at those points if needed.

General troubleshooting tips

When first approaching a failed or otherwise misbehaving system, the new troubleshooter often doesn't know where to begin. The following strategies are not exhaustive by any means, but provide the troubleshooter with a simple checklist of questions to ask in order to start isolating the problem.

As tips, these troubleshooting suggestions are not comprehensive procedures: they serve as starting points only for the troubleshooting process. An essential part of expedient troubleshooting is probability assessment, and these tips help the troubleshooter determine which possible points of failure are more or less likely than others. Final isolation of the system failure is usually determined through more specific techniques (outlined in the next section -- Specific Troubleshooting Techniques).

Prior occurrence

If this device or process has been historically known to fail in a certain particular way, and the conditions leading to this common failure have not changed, check for this "way" first. A corollary to this troubleshooting tip is the directive to keep detailed records of failure. Ideally, a computer-based failure log is optimal, so that failures may be referenced by and correlated to a number of factors such as time, date, and environmental conditions.


Example: The car's engine is overheating. The last two times this happened, the cause was low coolant level in the radiator.

What to do: Check the coolant level first. Of course, past history by no means guarantees the present symptoms are caused by the same problem, but since this is more likely, it makes sense to check this first.

If, however, the cause of routine failure in a system has been corrected (i.e. the leak causing low coolant level in the past has been repaired), then this may not be a probable cause of trouble this time.


Recent alterations

If a system has been having problems immediately after some kind of maintenance or other change, the problems might be linked to those changes.


Example: The mechanic recently tuned my car's engine, and now I hear a rattling noise that I didn't hear before I took the car in for repair.

What to do: Check for something that may have been left loose by the mechanic after his or her tune-up work.


Function vs. non-function

If a system isn't producing the desired end result, look for what it is doing correctly; in other words, identify where the problem is not, and focus your efforts elsewhere. Whatever components or subsystems necessary for the properly working parts to function are probably okay. The degree of fault can often tell you what part of it is to blame.


Example: The radio works fine on the AM band, but not on the FM band.

What to do: Eliminate from the list of possible causes, anything in the radio necessary for the AM band's function. Whatever the source of the problem is, it is specific to the FM band and not to the AM band. This eliminates the audio amplifier, speakers, fuse, power supply, and almost all external wiring. Being able to eliminate sections of the system as possible failures reduces the scope of the problem and makes the rest of the troubleshooting procedure more efficient.


Hypothesize

Based on your knowledge of how a system works, think of various kinds of failures that would cause this problem (or these phenomena) to occur, and check for those failures (starting with the most likely based on circumstances, history, or knowledge of component weaknesses).


Example: The car's engine is overheating.

What to do: Consider possible causes for overheating, based on what you know of engine operation. Either the engine is generating too much heat, or not getting rid of the heat well enough (most likely the latter). Brainstorm some possible causes: a loose fan belt, clogged radiator, bad water pump, low coolant level, etc. Investigate each one of those possibilities before investigating alternatives.

Specific troubleshooting techniques

After applying some of the general troubleshooting tips to narrow the scope of a problem's location, there are techniques useful in further isolating it. Here are a few:

Swap identical components

In a system with identical or parallel subsystems, swap components between those subsystems and see whether or not the problem moves with the swapped component. If it does, you've just swapped the faulty component; if it doesn't, keep searching!

This is a powerful troubleshooting method, because it gives you both a positive and a negative indication of the swapped component's fault: when the bad part is exchanged between identical systems, the formerly broken subsystem will start working again and the formerly good subsystem will fail.

I was once able to troubleshoot an elusive problem with an automotive engine ignition system using this method: I happened to have a friend with an automobile sharing the exact same model of ignition system. We swapped parts between the engines (distributor, spark plug wires, ignition coil -- one at a time) until the problem moved to the other vehicle. The problem happened to be a "weak" ignition coil, and it only manifested itself under heavy load (a condition that could not be simulated in my garage). Normally, this type of problem could only be pinpointed using an ignition system analyzer (or oscilloscope) and a dynamometer to simulate loaded driving conditions. This technique, however, confirmed the source of the problem with 100% accuracy, using no diagnostic equipment whatsoever.

Occasionally you may swap a component and find that the problem still exists, but has changed in some way. This tells you that the components you just swapped are somehow different (different calibration, different function), and nothing more. However, don't dismiss this information just because it doesn't lead you straight to the problem -- look for other changes in the system as a whole as a result of the swap, and try to figure out what these changes tell you about the source of the problem.

An important caveat to this technique is the possibility of causing further damage. Suppose a component has failed because of another, less conspicuous failure in the system. Swapping the failed component with a good component will cause the good component to fail as well. For example, suppose that a circuit develops a short, which "blows" the protective fuse for that circuit. The blown fuse is not evident by inspection, and you don't have a meter to electrically test the fuse, so you decide to swap the suspect fuse with one of the same rating from a working circuit. As a result of this, the good fuse that you move to the shorted circuit blows as well, leaving you with two blown fuses and two non-working circuits. At least you know for certain that the original fuse was blown, because the circuit it was moved to stopped working after the swap, but this knowledge was gained only through the loss of a good fuse and the additional "down time" of the second circuit.

Another example to illustrate this caveat is the ignition system problem previously mentioned. Suppose that the "weak" ignition coil had caused the engine to backfire, damaging the muffler. If swapping ignition system components with another vehicle causes the problem to move to the other vehicle, damage may be done to the other vehicle's muffler as well. As a general rule, the technique of swapping identical components should be used only when there is minimal chance of causing additional damage. It is an excellent technique for isolating non-destructive problems.


Example 1: You're working on a CNC machine tool with X, Y, and Z-axis drives. The Y axis is not working, but the X and Z axes are working. All three axes share identical components (feedback encoders, servo motor drives, servo motors).

What to do: Exchange these identical components, one at a time, Y axis and either one of the working axes (X or Z), and see after each swap whether or not the problem has moved with the swap.


Example 2: A stereo system produces no sound on the left speaker, but the right speaker works just fine.

What to do: Try swapping respective components between the two channels and see if the problem changes sides, from left to right. When it does, you've found the defective component. For instance, you could swap the speakers between channels: if the problem moves to the other side (i.e. the same speaker that was dead before is still dead, now that it's connected to the right channel cable) then you know that speaker is bad. If the problem stays on the same side (i.e. the speaker formerly silent is now producing sound after having been moved to the other side of the room and connected to the other cable), then you know the speakers are fine, and the problem must lie somewhere else (perhaps in the cable connecting the silent speaker to the amplifier, or in the amplifier itself).

If the speakers have been verified as good, then you could check the cables using the same method. Swap the cables so that each one now connects to the other channel of the amplifier and to the other speaker. Again, if the problem changes sides (i.e. now the right speaker is now "dead" and the left speaker now produces sound), then the cable now connected to the right speaker must be defective. If neither swap (the speakers nor the cables) causes the problem to change sides from left to right, then the problem must lie within the amplifier (i.e. the left channel output must be "dead").


Remove parallel components

If a system is composed of several parallel or redundant components which can be removed without crippling the whole system, start removing these components (one at a time) and see if things start to work again.


Example 1: A "star" topology communications network between several computers has failed. None of the computers are able to communicate with each other.

What to do: Try unplugging the computers, one at a time from the network, and see if the network starts working again after one of them is unplugged. If it does, then that last unplugged computer may be the one at fault (it may have been "jamming" the network by constantly outputting data or noise).


Example 2: A household fuse keeps blowing (or the breaker keeps tripping open) after a short amount of time.

What to do: Unplug appliances from that circuit until the fuse or breaker quits interrupting the circuit. If you can eliminate the problem by unplugging a single appliance, then that appliance might be defective. If you find that unplugging almost any appliance solves the problem, then the circuit may simply be overloaded by too many appliances, neither of them defective.


Divide system into sections and test those sections

In a system with multiple sections or stages, carefully measure the variables going in and out of each stage until you find a stage where things don't look right.


Example 1: A radio is not working (producing no sound at the speaker))

What to do: Divide the circuitry into stages: tuning stage, mixing stages, amplifier stage, all the way through to the speaker(s). Measure signals at test points between these stages and tell whether or not a stage is working properly.


Example 2: An analog summer circuit is not functioning properly.

What to do: I would test the passive averager network (the three resistors at the lower-left corner of the schematic) to see that the proper (averaged) voltage was seen at the noninverting input of the op-amp. I would then measure the voltage at the inverting input to see if it was the same as at the noninverting input (or, alternatively, measure the voltage difference between the two inputs of the op-amp, as it should be zero). Continue testing sections of the circuit (or just test points within the circuit) to see if you measure the expected voltages and currents.


Simplify and rebuild

Closely related to the strategy of dividing a system into sections, this is actually a design and fabrication technique useful for new circuits, machines, or systems. It's always easier begin the design and construction process in little steps, leading to larger and larger steps, rather than to build the whole thing at once and try to troubleshoot it as a whole.

Suppose that someone were building a custom automobile. He or she would be foolish to bolt all the parts together without checking and testing components and subsystems as they went along, expecting everything to work perfectly after it's all assembled. Ideally, the builder would check the proper operation of components along the way through the construction process: start and tune the engine before it's connected to the drivetrain, check for wiring problems before all the cover panels are put in place, check the brake system in the driveway before taking it out on the road, etc.

Countless times I've witnessed students build a complex experimental circuit and have trouble getting it to work because they didn't stop to check things along the way: test all resistors before plugging them into place, make sure the power supply is regulating voltage adequately before trying to power anything with it, etc. It is human nature to rush to completion of a project, thinking that such checks are a waste of valuable time. However, more time will be wasted in troubleshooting a malfunctioning circuit than would be spent checking the operation of subsystems throughout the process of construction.

Take the example of the analog summer circuit in the previous section for example: what if it wasn't working properly? How would you simplify it and test it in stages? Well, you could reconnect the op-amp as a basic comparator and see if it's responsive to differential input voltages, and/or connect it as a voltage follower (buffer) and see if it outputs the same analog voltage as what is input. If it doesn't perform these simple functions, it will never perform its function in the summer circuit! By stripping away the complexity of the summer circuit, paring it down to an (almost) bare op-amp, you can test that component's functionality and then build from there (add resistor feedback and check for voltage amplification, then add input resistors and check for voltage summing), checking for expected results along the way.


Trap a signal

Set up instrumentation (such as a datalogger, chart recorder, or multimeter set on "record" mode) to monitor a signal over a period of time. This is especially helpful when tracking down intermittent problems, which have a way of showing up the moment you've turned your back and walked away.

This may be essential for proving what happens first in a fast-acting system. Many fast systems (especially shutdown "trip" systems) have a "first out" monitoring capability to provide this kind of data.


Example #1: A turbine control system shuts automatically in response to an abnormal condition. By the time a technician arrives at the scene to survey the turbine's condition, however, everything is in a "down" state and it's impossible to tell what signal or condition was responsible for the initial shutdown, as all operating parameters are now "abnormal."

What to do: One technician I knew used a videocamera to record the turbine control panel, so he could see what happened (by indications on the gauges) first in an automatic-shutdown event. Simply by looking at the panel after the fact, there was no way to tell which signal shut the turbine down, but the videotape playback would show what happened in sequence, down to a frame-by-frame time resolution.


Example #2: An alarm system is falsely triggering, and you suspect it may be due to a specific wire connection going bad. Unfortunately, the problem never manifests itself while you're watching it!

What to do: Many modern digital multimeters are equipped with "record" settings, whereby they can monitor a voltage, current, or resistance over time and note whether that measurement deviates substantially from a regular value. This is an invaluable tool for use in "intermittent" electronic system failures.

Likely failures in proven systems

The following problems are arranged in order from most likely to least likely, top to bottom. This order has been determined largely from personal experience troubleshooting electrical and electronic problems in automotive, industry, and home applications. This order also assumes a circuit or system that has been proven to function as designed and has failed after substantial operation time. Problems experienced in newly assembled circuits and systems do not necessarily exhibit the same probabilities of occurrence.

Operator error

A frequent cause of system failure is error on the part of those human beings operating it. This cause of trouble is placed at the top of the list, but of course the actual likelihood depends largely on the particular individuals responsible for operation. When operator error is the cause of a failure, it is unlikely that it will be admitted prior to investigation. I do not mean to suggest that operators are incompetent and irresponsible -- quite the contrary: these people are often your best teachers for learning system function and obtaining a history of failure -- but the reality of human error cannot be overlooked. A positive attitude coupled with good interpersonal skills on the part of the troubleshooter goes a long way in troubleshooting when human error is the root cause of failure.

Bad wire connections

As incredible as this may sound to the new student of electronics, a high percentage of electrical and electronic system problems are caused by a very simple source of trouble: poor (i.e. open or shorted) wire connections. This is especially true when the environment is hostile, including such factors as high vibration and/or a corrosive atmosphere. Connection points found in any variety of plug-and-socket connector, terminal strip, or splice are at the greatest risk for failure. The category of "connections" also includes mechanical switch contacts, which can be thought of as a high-cycle connector. Improper wire termination lugs (such as a compression-style connector crimped on the end of a solid wire -- a definite faux pas) can cause high-resistance connections after a period of trouble-free service.

It should be noted that connections in low-voltage systems tend to be far more troublesome than connections in high-voltage systems. The main reason for this is the effect of arcing across a discontinuity (circuit break) in higher-voltage systems tends to blast away insulating layers of dirt and corrosion, and may even weld the two ends together if sustained long enough. Low-voltage systems tend not to generate such vigorous arcing across the gap of a circuit break, and also tend to be more sensitive to additional resistance in the circuit. Mechanical switch contacts used in low-voltage systems benefit from having the recommended minimum wetting current conducted through them to promote a healthy amount of arcing upon opening, even if this level of current is not necessary for the operation of other circuit components.

Although open failures tend to more common than shorted failures, "shorts" still constitute a substantial percentage of wiring failure modes. Many shorts are caused by degradation of wire insulation. This, again, is especially true when the environment is hostile, including such factors as high vibration, high heat, high humidity, or high voltage. It is rare to find a mechanical switch contact that is failed shorted, except in the case of high-current contacts where contact "welding" may occur in overcurrent conditions. Shorts may also be caused by conductive buildup across terminal strip sections or the backs of printed circuit boards.

A common case of shorted wiring is the ground fault, where a conductor accidently makes contact with either earth or chassis ground. This may change the voltage(s) present between other conductors in the circuit and ground, thereby causing bizarre system malfunctions and/or personnel hazard.

Power supply problems

These generally consist of tripped overcurrent protection devices or damage due to overheating. Although power supply circuitry is usually less complex than the circuitry being powered, and therefore should figure to be less prone to failure on that basis alone, it generally handles more power than any other portion of the system and therefore must deal with greater voltages and/or currents. Also, because of its relative design simplicity, a system's power supply may not receive the engineering attention it deserves, most of the engineering focus devoted to more glamorous parts of the system.

Active components

Active components (amplification devices) tend to fail with greater regularity than passive (non-amplifying) devices, due to their greater complexity and tendency to amplify overvoltage/overcurrent conditions. Semiconductor devices are notoriously prone to failure due to electrical transient (voltage/current surge) overloading and thermal (heat) overloading. Electron tube devices are far more resistant to both of these failure modes, but are generally more prone to mechanical failures due to their fragile construction.

Passive components

Non-amplifying components are the most rugged of all, their relative simplicity granting them a statistical advantage over active devices. The following list gives an approximate relation of failure probabilities (again, top being the most likely and bottom being the least likely):

  • Capacitors (shorted), especially electrolytic capacitors. The paste electrolyte tends to lose moisture with age, leading to failure. Thin dielectric layers may be punctured by overvoltage transients.
  • Diodes open (rectifying diodes) or shorted (Zener diodes).
  • Inductor and transformer windings open or shorted to conductive core. Failures related to overheating (insulation breakdown) are easily detected by smell.
  • Resistors open, almost never shorted. Usually this is due to overcurrent heating, although it is less frequently caused by overvoltage transient (arc-over) or physical damage (vibration or impact). Resistors may also change resistance value if overheated!

Likely failures in unproven systems

"All men are liable to error;"

John Locke

Whereas the last section deals with component failures in systems that have been successfully operating for some time, this section concentrates on the problems plaguing brand-new systems. In this case, failure modes are generally not of the aging kind, but are related to mistakes in design and assembly caused by human beings.

Wiring problems

In this case, bad connections are usually due to assembly error, such as connection to the wrong point or poor connector fabrication. Shorted failures are also seen, but usually involve misconnections (conductors inadvertently attached to grounding points) or wires pinched under box covers.

Another wiring-related problem seen in new systems is that of electrostatic or electromagnetic interference between different circuits by way of close wiring proximity. This kind of problem is easily created by routing sets of wires too close to each other (especially routing signal cables close to power conductors), and tends to be very difficult to identify and locate with test equipment.

Power supply problems

Blown fuses and tripped circuit breakers are likely sources of trouble, especially if the project in question is an addition to an already-functioning system. Loads may be larger than expected, resulting in overloading and subsequent failure of power supplies.

Defective components

In the case of a newly-assembled system, component fault probabilities are not as predictable as in the case of an operating system that fails with age. Any type of component -- active or passive -- may be found defective or of imprecise value "out of the box" with roughly equal probability, barring any specific sensitivities in shipping (i.e fragile vacuum tubes or electrostatically sensitive semiconductor components). Moreover, these types of failures are not always as easy to identify by sight or smell as an age- or transient-induced failure.

Improper system configuration

Increasingly seen in large systems using microprocessor-based components, "programming" issues can still plague non-microprocessor systems in the form of incorrect time-delay relay settings, limit switch calibrations, and drum switch sequences. Complex components having configuration "jumpers" or switches to control behavior may not be "programmed" properly.

Components may be used in a new system outside of their tolerable ranges. Resistors, for example, with too low of power ratings, of too great of tolerance, may have been installed. Sensors, instruments, and controlling mechanisms may be uncalibrated, or calibrated to the wrong ranges.

Design error

Perhaps the most difficult to pinpoint and the slowest to be recognized (especially by the chief designer) is the problem of design error, where the system fails to function simply because it cannot function as designed. This may be as trivial as the designer specifying the wrong components in a system, or as fundamental as a system not working due to the designer's improper knowledge of physics.

I once saw a turbine control system installed that used a low-pressure switch on the lubrication oil tubing to shut down the turbine if oil pressure dropped to an insufficient level. The oil pressure for lubrication was supplied by an oil pump turned by the turbine. When installed, the turbine refused to start. Why? Because when it was stopped, the oil pump was not turning, thus there was no oil pressure to lubricate the turbine. The low-oil-pressure switch detected this condition and the control system maintained the turbine in shutdown mode, preventing it from starting. This is a classic example of a design flaw, and it could only be corrected by a change in the system logic.

While most design flaws manifest themselves early in the operational life of the system, some remain hidden until just the right conditions exist to trigger the fault. These types of flaws are the most difficult to uncover, as the troubleshooter usually overlooks the possibility of design error due to the fact that the system is assumed to be "proven." The example of the turbine lubrication system was a design flaw impossible to ignore on start-up. An example of a "hidden" design flaw might be a faulty emergency coolant system for a machine, designed to remain inactive until certain abnormal conditions are reached -- conditions which might never be experienced in the life of the system.

Potential pitfalls

Fallacious reasoning and poor interpersonal relations account for more failed or belabored troubleshooting efforts than any other impediments. With this in mind, the aspiring troubleshooter needs to be familiar with a few common troubleshooting mistakes.


Trusting that a brand-new component will always be good. While it is generally true that a new component will be in good condition, it is not always true. It is also possible that a component has been mis-labeled and may have the wrong value (usually this mis-labeling is a mistake made at the point of distribution or warehousing and not at the manufacturer, but again, not always!).


Not periodically checking your test equipment. This is especially true with battery-powered meters, as weak batteries may give spurious readings. When using meters to safety-check for dangerous voltage, remember to test the meter on a known source of voltage both before and after checking the circuit to be serviced, to make sure the meter is in proper operating condition.


Assuming there is only one failure to account for the problem. Single-failure system problems are ideal for troubleshooting, but sometimes failures come in multiple numbers. In some instances, the failure of one component may lead to a system condition that damages other components. Sometimes a component in marginal condition goes undetected for a long time, then when another component fails the system suffers from problems with both components.


Mistaking coincidence for causality. Just because two events occurred at nearly the same time does not necessarily mean one event caused the other! They may be both consequences of a common cause, or they may be totally unrelated! If possible, try to duplicate the same condition suspected to be the cause and see if the event suspected to be the coincidence happens again. If not, then there is either no causal relationship as assumed. This may mean there is no causal relationship between the two events whatsoever, or that there is a causal relationship, but just not the one you expected.


Self-induced blindness. After a long effort at troubleshooting a difficult problem, you may become tired and begin to overlook crucial clues to the problem. Take a break and let someone else look at it for a while. You will be amazed at what a difference this can make. On the other hand, it is generally a bad idea to solicit help at the start of the troubleshooting process. Effective troubleshooting involves complex, multi-level thinking, which is not easily communicated with others. More often than not, "team troubleshooting" takes more time and causes more frustration than doing it yourself. An exception to this rule is when the knowledge of the troubleshooters is complementary: for example, a technician who knows electronics but not machine operation, teamed with an operator who knows machine function but not electronics.


Failing to question the troubleshooting work of others on the same job. This may sound rather cynical and misanthropic, but it is sound scientific practice. Because it is easy to overlook important details, troubleshooting data received from another troubleshooter should be personally verified before proceeding. This is a common situation when troubleshooters "change shifts" and a technician takes over for another technician who is leaving before the job is done. It is important to exchange information, but do not assume the prior technician checked everything they said they did, or checked it perfectly. I've been hindered in my troubleshooting efforts on many occasions by failing to verify what someone else told me they checked.


Being pressured to "hurry up." When an important system fails, there will be pressure from other people to fix the problem as quickly as possible. As they say in business, "time is money." Having been on the receiving end of this pressure many times, I can understand the need for expedience. However, in many cases there is a higher priority: caution. If the system in question harbors great danger to life and limb, the pressure to "hurry up" may result in injury or death. At the very least, hasty repairs may result in further damage when the system is restarted. Most failures can be recovered or at least temporarily repaired in short time if approached intelligently. Improper "fixes" resulting in haste often lead to damage that cannot be recovered in short time, if ever. If the potential for greater harm is present, the troubleshooter needs to politely address the pressure received from others, and maintain their perspective in the midst of chaos. Interpersonal skills are just as important in this realm as technical ability!


Finger-pointing. It is all too easy to blame a problem on someone else, for reasons of ignorance, pride, laziness, or some other unfortunate facet of human nature. When the responsibility for system maintenance is divided into departments or work crews, troubleshooting efforts are often hindered by blame cast between groups. "It's a mechanical problem . . . it's an electrical problem . . . it's an instrument problem . . ." ad infinitum, ad nauseum, is all too common in the workplace. I have found that a positive attitude does more to quench the fires of blame than anything else.

On one particular job, I was summoned to fix a problem in a hydraulic system assumed to be related to the electronic metering and controls. My troubleshooting isolated the source of trouble to a faulty control valve, which was the domain of the millwright (mechanical) crew. I knew that the millwright on shift was a contentious person, so I expected trouble if I simply passed the problem on to his department. Instead, I politely explained to him and his supervisor the nature of the problem as well as a brief synopsis of my reasoning, then proceeded to help him replace the faulty valve, even though it wasn't "my" responsibility to do so. As a result, the problem was fixed very quickly, and I gained the respect of the millwright.

Wednesday, February 20, 2008

AWR Microwave Office 2006

AWR Microwave Office 2006 v7.01.3145.2

http://web.appwave.com/Products/Microwave_Office/Overview.php

Download(86505 KB):

Code:http://rapidshare.com/files/23467811/AWR_MWO_2006_7.rar

free download Autodata 3.18 2007

Autodata 3.18 2007

http://rapidshare.com/files/57228828/Autodata_3.18_CD1_CD2.part01.rar
http://rapidshare.com/files/57228730/Autodata_3.18_CD1_CD2.part02.rar
http://rapidshare.com/files/57228858/Autodata_3.18_CD1_CD2.part03.rar
http://rapidshare.com/files/57228897/Autodata_3.18_CD1_CD2.part04.rar
http://rapidshare.com/files/57229437/Autodata_3.18_CD1_CD2.part05.rar
http://rapidshare.com/files/57230857/Autodata_3.18_CD1_CD2.part06.rar
http://rapidshare.com/files/57229458/Autodata_3.18_CD1_CD2.part07.rar
http://rapidshare.com/files/57229502/Autodata_3.18_CD1_CD2.part08.rar
http://rapidshare.com/files/57245267/Autodata_3.18_CD1_CD2.part09.rar
http://rapidshare.com/files/57243735/Autodata_3.18_CD1_CD2.part10.rar

AudioTester

With the help of a high quality soundcard your PC will be an audio lab. You measure frequency responses of loudspeakers crossovers, distortion of any audio equipment and impulse responses of loudspeaker systems.

Sound and tones to wave files
· Asyncrone Impulsmeasurement
· Measurement of Distortions vs. Power
· Measurement of Thiele Small Parameter
· 3D-Diagram for waterfall plots
· Time Diagram above the frequency-diagram
· Presets for all settings
· Frequency measurement with dirac and MLS impulses
· Impedance plots of loadspeakers
· Up to 8 curves with up to 8 Y scales in the 2D diagram
· Display filter for the curves
· Automatic switching of the curves at serial measurement
· Copy from curves with Drag'n Drop
· Scaling of the diagram to 0dB = max. value or 1kHz
· Symbol sight of the measuremet schematic
· Spectrumanalyse with Fast-Fourier-Transformation
· Distortion, Level Analyser and THD+N with several filters
· Measurement of single harmonics ( H2 - H9 )
· Correction files to make the frequency response linear
· Diagram scale while measuring
· Support of absolute level units ( dbV, dbu ) after calibration
· Storing diagrams as bitmaps or textfiles
· Storing measured values as textfile
· Storing of single curves
· Print and Clipboard funtions
· Optional ASIO Support *
· OnLine help ( german and englisch )

http://rapidshare.com/files/28030899/atest_home.zip

free download Assembly Language books

ARM Assembly Language Programming
By Peter J. Cockerell
http://rapidshare.com/files/53771264/aalprmpc.rar

The Art of Assembly Language 1st edition
By Randall Hyde
http://rapidshare.de/files/13158632/1886411972.zip

Introduction to 80X86 Assembly Language and Computer Architecture
By Richard C. Detmer
http://mihd.net/26hrji

32/64-bit 80x86 Assembly Language Architecture
By James Leiterman
http://rapidshare.com/files/7000194/wordware.32.64-bit.80x86.assembly.language.architecture.ebook-spy.chm

Linux Assembly Language Programming
By Bob Neveln
http://rapidshare.com/files/1434815/lalp.rar

The Assembly Programming Master Book
By Vlad Pirogov
http://rapidshare.com/files/9381410/The__Assembly__Programming__Master__Book.zip
Password:ebookspyder.net

Zen of Assembly Language Knowledge
By Michael Abrash
http://rapidshare.com/files/52238878/The_zen_of_assembly_language.pdf

Fundamentals of Embedded Software Where C and Assembly Meet
By Daniel W. Lewis
http://mihd.net/f2i70g

Assembly Language Step-By-Step
By Jeff Duntemann
http://rapidshare.com/files/6351274/assemb_ss.rar

Professional Assembly Language
By Richard Blum
http://rapidshare.de/files/22049261/RBlum.rar.html
Password:www.AvaxHome.ru

Guide to Assembly Language Programming in Linux
By Sivarama P. Dandamudi
http://mihd.net/lowft9

ASIC equivalent gates for Virtex in digital elctronics

4-input LUT 6
4-input ROM 32
3-input LUT na
16x1 RAM 64
32x1 RAM 128
16 Shift Reg LUT 64
CLB flop 8
CLB latch 5
IOB flop 8
IOB latch 5
IOB Sync latch na
TBUF 3
Block RAM 16,384
BSCAN 48
Clk DLL 7,000
F5 MUX 3
F6 MUX 3
MUXCY 3
XORCY 3

If you do some quick math, one can calculate the typical ASIC gates for a
Virtex 1000, which has a 64x96 CLB array:
( 64*96 CLB )* ( 2 Slices/CLB )* ( 20 Gates/Slice ) = 245,760 Gates

FPGA & ASIC based design

The main diferrence between ASIC and FPGA based design is in the Back-end.
In FPGAs there is not much activities in back end.

FPGA flow:
SPECIFICATION -> RTL DESIGN -> FUNCTIONAL SIMULATION -> SYNTHESIS -> TRANSLATION -> MAPPING -> PLACE & ROUTE -> BITGEN GENERATION -> DOWNLOAD TO THE CHIP.

ASIC flow:
SPECIFICATION -> RTL DESIGN -> FUNCTIONAL SIMULATION -> SYNTHESIS -> EXTRACT RC VALUES -> DRC, LVS,etc., -> LIBRARY VENDOR SPECIFIC FILE FORMAT

Application Specific Integrated Circuit ( ASIC )

An application-specific integrated circuit or ASIC comprises an integrated circuit (IC) with functionality customized for a particular use (equipment or project), rather than serving for general-purpose use. For example, a chip designed solely to run a cash register is an ASIC. In contrast, a microprocessor is not application-specific, because users can adapt it to many purposes.

The initial ASICs used gate-array technology.

The British firm Ferranti produced perhaps the first gate-array, the ULA (Uncommitted Logic Array), around 1980. Customisation occurred by varying the metal interconnect mask. ULAs had complexities of up to a few thousand gates. Later versions became more generalized, with different base dies customised by both metal and polysilicon layers. Some base dies include RAM elements.

In the late 1980s, the availability of logic synthesis tools (such as Design Compiler) that could accept hardware description language descriptions using Verilog and VHDL and compile a high-level description into to an optimised gate level netlist brought "standard-cell" design into the fore-front. A standard-cell library consists of pre-characterized collections of gates (such as 2 input nor, 2 input nand, invertors, etc.) that the silicon compiler uses to translate the original source into a gate level netlist. This netlist is fed into a place and route tool to create a physical layout. Routing applications then place the pre-characterized cells in a matrix fashion, and then route the connections through the matrix. The final output of the "place & route" process comprises a data-base representing the various layers and polygons in GDS-II format that represent the different mask-layers of the actual chip.

Finally, designers can also take the "full-custom" route in implementing an ASIC. In this case, an individual description of each transistor occurs in building the circuit. A "full-custom" implementation may function five times faster than a "standard-cell" implementation. The "standard-cell" implementation can usually be implemented quite a bit quicker and with less risk of errors, than the "full-custom" choice.

As feature sizes have shrunk and design tools improved over the years, the maximum complexity (and hence functionality) has increased from 5000 gates to 20 million or more. Modern ASICs often include 32-bit processors and other large building-blocks. Many people refer to such an ASIC as a SoC - System on a Chip.

The use of intellectual property (IP) in ASICs has become a growing trend. Many ASIC houses have had standard cell libraries for years. However IP takes the reuse of designs to a new level. Designers of most complex digital ICs now utilise computer languages that describe electronics rather than code. Many organizations now sell tested functional blocks written in these languages. For example, one can purchase CPUs, ethernet or telephone interfaces.

For smaller designs and/or lower production volumes, ASICs have started to become a less attractive solution, as field-programmable gate arrays (FPGAs) grow larger, faster and more capable. Some SoCs consist of a microprocessor, various types of memory and a large FPGA.

Slack

slack is defined as the difference between the reqd_arrival time of a signal & it's actual arrival time.

It should be always >= zero

It is also defined as the difference between the clock period and the total path delay from one flop to other flop which includes the clock to q delay of source flop, total combinational delay between flops and set up time of the destination flop.

Slack related problems will arise for the critical paths in the design i.e nothing but the max. delay paths, clock to Q delay + Prop.Delay + setup of of dest flop.

In any design Slack should always be +ve. If it is negitive means there is a timing violation that is not meeting a setup or a hold requirement and it gets difficult to achieve the required frequency.

RARP Q&A

  1. What is RARP?
  2. Reverse Address Resolution Protocol (RARP) is a network protocol used to resolve a data link layer address to the corresponding network layer address. For example, RARP is used to resolve a Ethernet MAC address to an IP address.

  3. To which OSI layer does RARP belong?
  4. RARP belongs to the OSI data link layer (layer 2).

  5. Which RFC specifies the requirements for RARP?
  6. RFC 903 specifies the RARP packet format and other details.

  7. Why is RARP needed?
  8. Normally, the IP address of a system is stored in a configuration file in the local disk. When the system is started, it determines its IP address from this file. In the case of a diskless workstation, its IP address cannot be stored in the system itself. In this case, RARP can be used to get the IP address from a RARP server.

  9. What is a RARP server?
  10. All the mappings between the hardware MAC addresses and the IP addresses of the hosts are stored in a configuration file in a host in the network. This host is called the RARP server. This host responds to all the RARP requests.

  11. Where is the mapping between the MAC address and IP addresses stored in a RARP server?
  12. The mapping between MAC addresses and IP addresses is usually stored in a configuration file in the local hard disk in the RARP server.

  13. Can RARP be used in a network other than Ethernet?
  14. Yes. RARP is a general protocol, which can be used to map any type of hardware MAC address to any type of network layer protocol address.

  15. How does RARP resolve an Ethernet MAC address to an IP address?
  16. When a diskless system is booted up, it broadcasts a RARP request packet with its MAC address. This packet is received by all the hosts in the network. When the RARP server receives this packet, it looks up this MAC address in the configuration file and determines the corresponding IP address. It then sends this IP address in the RARP reply packet. The diskless system receives this packet and gets its IP address.

  17. When is a RARP request packet generated?
  18. A RARP request packet is usually generated during the booting sequence of a host. A host must determines its IP address during the booting sequence. The IP address is needed to communicate with other hosts in the network.

  19. What happens when a RARP server receives a RARP request packet?
  20. When a RARP server receives a RARP request packet it performs the following steps:
    1. The MAC address in the request packet is looked up in the configuration file and mapped to the corresponding IP address.
    2. If the mapping is not found, the packet is discarded.
    3. If the mapping is found, a RARP reply packet is generated with the MAC and IP address. This packet is sent to the host, which originated the RARP request.

  21. What happens when a host receives a RARP reply packet?
  22. When a host receives a RARP reply packet, it gets its IP address from the packet and completes the booting process. This IP address is used for communicating with other hosts, till it is rebooted.

  23. What is the length of a RARP request and reply packet?
  24. The length of a RARP request or a RARP reply packet is 28 bytes.

  25. What is the RARP packet format?
  26. The various fields of a RARP request/reply packet and their length are shown below:
        +--------+
    Hardware 2 bytes
    MAC
    Address
    Type
    +--------+
    Protocol 2 bytes
    Address
    Type
    +--------+
    Hardware 1 byte
    MAC
    Address
    Size
    +--------+
    Protocol 1 byte
    Address
    Size
    +--------+
    Op 2 bytes
    +--------+
    Sender 6 bytes (depends on the above size field)
    MAC
    Address
    +--------+
    Sender 4 bytes (depends on the above size field)
    IP
    Address
    +--------+
    Target 6 bytes (depends on the above size field)
    MAC
    Address
    +--------+
    Target 4 bytes (depends on the above size field)
    IP
    Address
    +--------+
    The fields are further explained below:
        +---------+-------------------------------------------------------+
    Ethernet For a RARP request, source MAC address is the MAC
    Header address of the host sending the RARP request,
    destination MAC address is the Ethernet broadcast
    address (FF:FF:FF:FF:FF:FF), frame type field is 0x8035
    For RARP reply, source MAC address is the MAC address
    of the RARP server replying to the RARP request,
    destination MAC address is the MAC address of the host
    that sent the RARP request, and the frame type field is
    0x8035.
    +---------+-------------------------------------------------------+
    Hardware Type of the hardware MAC address present in the packet.
    Address For Ethernet the value of this field is 1.
    Type
    +---------+-------------------------------------------------------+
    Protocol Type of the protocol address requested for the MAC
    Address address. For IP address the value of this field is
    Type 0x800.
    +---------+-------------------------------------------------------+
    Hardware Size of the hardware MAC address. For Ethernet, the
    Address value of this field is 6.
    Size
    +---------+-------------------------------------------------------+
    Protocol Size of the protocol address. For IP, the value of
    Address this field is 4.
    Size
    +---------+-------------------------------------------------------+
    OperationType of operation being performed. The value of this
    field can be 3 (RARP request) or 4 (RARP reply).
    +---------+-------------------------------------------------------+
    Source In a RARP request packet, this is the hardware MAC
    MAC address of the source host. In a RARP reply packet,
    address this is the hardware MAC address of the RARP server
    sending the RARP reply.
    +---------+-------------------------------------------------------+
    Source In a RARP request packet, this is undefined. In a
    IP RARP reply packet, this is the IP address of the RARP
    address server sending the RARP reply.
    +---------+-------------------------------------------------------+
    Target In a RARP request packet, this is the hardware MAC
    MAC address of the source host. In a RARP reply packet,
    address this is the hardware MAC address of the host, that sent
    the RARP request packet.
    +---------+-------------------------------------------------------+
    Target In a RARP request packet, this is undefined. In a RARP
    IP reply packet, this is the IP address of the host
    address that sent the RARP request packet.
    +---------+-------------------------------------------------------+

  27. Does RARP use the same packet format as ARP?
  28. Yes. RARP uses the same packet format as ARP.

  29. How is a RARP packet differentiated from an ARP packet?
  30. The frame type in the Ethernet header is used to differentiate a RARP packet from an ARP packet. The value of the opcode field in the RARP header can also be used.

  31. Is the format of a RARP request packet the same as that of a RARP reply packet?
  32. Yes. The packet format of a RARP request packet is same as that of a RARP reply packet.

  33. How is a RARP request differentiated from a RARP reply packet?
  34. The 'operation' field in the RARP packet is used to differentiate between a RARP request and a RARP reply packet.

  35. What are the values for the source and destination IP address fields in a RARP request packet?
  36. In an RARP request packet, the source and destination IP address values are undefined.

  37. What are the values for the source and destination IP address values in a RARP reply packet?
  38. In a RARP reply packet, the source IP address is the IP address of the RARP server responding to the RARP request and the destination IP address is the IP address of the host that sent the RARP request.

  39. Do all the hosts in a network process a RARP packet?
  40. Since a RARP request packet is a broadcast packet, it is received by all the hosts in the network. But only a RARP server processes a RARP request packet, all the other hosts discard the packet. The RARP reply packet is not broadcast, it is sent directly to the host, which sent the RARP request.

  41. What will happen if more than one RARP server in a network responds to a RARP request?
  42. If more than one RARP server respond to a RARP request, then only the first RARP reply received is used. All other replies are discarded.

  43. What will happen if a RARP reply is not received for a RARP request?
  44. If a RARP reply is not received within a reasonable amount of time, the host, which sent the RARP request, will not be able to complete its booting sequence. Usually the host will again retry sending the RARP request after a timeout period.

  45. Are there any alternative protocols to RARP?
  46. The BOOTP and DHCP protocols can be used instead of RARP to get the IP address from the MAC address.

Archive