Thursday, December 24, 2009

asynchronous circuit problem

First of all synchronous designs are more reliable. They are deterministic in their behavior due to the fact that all signals are sampled at a well-defined time interval. Synchronous designs rely on very few timing parameters to guarantee operation namely the maximum frequency of operation of a device (fmax) the register setup and hold times (tSU and tH) and the register clock-to-output time (tCO). Meeting these parameters ensures designs will work under temperature voltage and process variations.
Synchronous designs are also portable. In all PLDs and ASICs the master clock or clocks are routed via a low-skew clock network. These networks ensure that a design done in one PLD architecture will be compatible with a different architecture with good results. Synchronous designs take advantage of this trait.
In addition synchronous designs can be tested more easily and run statically with the clock input driven by a test signal. They can be made virtually immune to noise. Therefore finding errors in a design will not be a cross between identifying logic errors and tracking down noise-induced errors.
Synchronous designs attain performance levels easily. The maximum operational frequency of a synchronous design can be determined from the data sheet for many PLDs. Determining maximum performance of circuitsthat include asynchronous clocking events is much more complicated.
Finally synchronous designs are easier to code in a hardware description language (HDL) and are also easier to read. Designs built around a common clock yield compact efficient code. On the other hand designs with numerous clocks and asynchronous behavior are more difficult to understand. Their code descriptions can also get cumbersome.

To avoid race effects and deadlock effect synchronous circuits are used

Synchronous circuit is sample based

  1. it also can have handshake –> asynchronous behaviour

Asynchronous circuit is filter based

  1. it use control(ack/req) signal to help decode the information from the data channel.
  2. since control signal is in a loop, it may not be deterministic
  3. extra noise and interconnect may cost more power when the circuit network become large

IEEE Computer Society System Competition

http://www.computer.org/portal/web/competition/home

 

ISA

NFDL(network flow description language)

Flow

  1. data ()
  2. control
  3. instructions
  4. state (FSMs)

node, link, layer

nodes

  1. 32 regs
  2. r(i) or r(i:j) or ra(rb) to access bit/bits
  3. reg vectors
    1. [r1,r2,r3].(0:1)
    2. vector also support sub accessing

Link

  1. single transaction as a function of input nodes and output nodes
  2. [r1,r2…..rn]-f->[Ra,Rb,Rc,Rd]
  3. fsum:: ((_,_)-+->,(_,_)-+->)-+->()

layer

  1. layer define a set of parallel transactions
  2. {f1,f2,f3} all transaction in the layer executed in parallel, if there are common node between function’s in/out put, it will be pipelined.

grammar

  1.   

Social network 2.0

Play

human computation

ESP game http://www.gwap.com/gwap/

utilise human curiosity (who, why, reward, soul mate)

Learn

Language partner, problem solving

towards collaborative achievement    

Connect

class of people as actor

inter class relationship (parent class, child class, peer class)

information flow in the class network.

layering for subnet of class network

 

Submission

http://www.ieeechangetheworld.org/submission/register.html

Problem Description

 

Impact on Humanity

if this network become real,

* Project Title:
(max 25 words)

Social Network 2.0

Problem Description (Optional):
(max 250 words)
Describe the problem you're trying to solve and what about the project intrigued you in the first place.

Social Interaction has always been an essential way for people to learn knowledge and solve problems, but how far have we harnessed it potential other than just using emails, Facebook and Twitterr. we definitely need a new platform for people to learn, communicated and interact.

Impact on Humanity:
(max 250 words)
Describe how your project benefits your community and/or humanity. Provide specific examples.

With today’s information technology, our ability to learn and communicate has significantly changed our life, and it’s still evolving every few years. But how much power have we really unleashed? how often do we spend long time to search on internet, play games, checking social networking site, etc. Is there a way to blend all of them together? connecting like minded people who can help each other, setting some game rules as a Turing complete problem solver, or even learn new languages from each other.  

Solution:
(max 2,500 words)
Describe in detail how you have solved the problem described above using engineering, science, computing and leadership skills. Include specifics on your approach, such as any research or planning conducted prior to execution, as well as detailed explanations of tactics employed to achieve the desired result. You can upload an appendix document to further support your solution.

Play

we all play games everyday, as long as there is set of rules and competition, we are in the game. Evolution is such a classic example, and the result is we are actually solving problems of life quality through this process of playing a game.

people have actually came out with the idea of human computation (eg ESP Game ), and what it does is exactly using game to solve problems such as image labelling, and the result is very interesting, but the problem is people feel gaining little reward when playing the game. and some times no rewards at all when playing with a robot.

Learn

we all want to get maximum rewards when playing a game, and the best reward is often solving a problem. if we can create a set of rules where people can help each other solving problems, learning new languages, achieve some thing collaboratively. we not only can improving the gaming experience, but also help people in real life.

Connect

Like people attract, when we have played with someone, we can tell whether someone is like minded or not, and then they can be connected in a class system, one they are in the class network, information flow in the network will be much more efficient, people can broadcasting text or video based information to specific networks, and people can also set rules to only receive information from specific networks. sounds like twitter ? but it more powerful.

Building a Electronic lab in VMware

This summary is not available. Please click here to view the post.

Android Dev on Ubuntu 9.10

Per-install

  1. Java 1.5.0 in Ubuntu 9.10
    1. go to http://java.sun.com/javase/downloads/index_jdk5.jsp download  JDK 5 update 22, this product is no longer officially supported, so need to submit a form and download from the link they send it to your email.
    2. the file downloaded will be xxxx.rpm.bin
    3. get rpm if you don’t have it, sudo apt-get install rpm
    4. then run the bin file (./)
    5. rmp –i xxxxx.rpm  --orce-debian –nodeps
    6. sudo update-alternatives --install /usr/bin/java java/usr/java/jdk1.5.0_22/bin/java 50
    7. sudo update-alternatives --install /usr/bin/javac javac/usr/java/jdk1.5.0_22/bin/javac 50
    8. sudo apt-get install git-core gnupg flex bison gperf build-essential zipcurl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
  2. other part follow http://source.android.com/download
    1. remember to add PATH=$PATH:$HOME/bin before run repo command
    2. export  PATH=$PATH:$HOME/bin
    3. export JAVA_HOME/bin:$PATH

post install

  1. eclipse IDE http://source.android.com/using-eclipse