Clock Skew In Sequential Circuits

Differences in clock signal arrival times across the chip are called clock skew. It is a fundamental design principle that timing must satisfy register setup and hold time requirements. Both data propagation delay and clock skew are parts of these calculations. Clocking sequentially-adjacent registers on the same edge of a high-skew clock can potentially cause timing violations or even functional failures.

Below Figure 1 shows an example of sequentially-adjacent registers, where a local routing resource has been used to route the clock signal. In this situation, a noticeable clock skew is likely.

In Figure 1, all registers are clocked at the same edge, but the arrival time of the edge is different at each register. Figure 2 indicates an example of the clock skew for the circuit shown in Figure 1.

Clock_skew_in_registerFigure 1: Sequentially Adjacent Registers with Clock Skew

Clock_skew_timing_diagramFigure 2: Clock Arrival Time Functions in the Circuit of Figure 1

History Of Verilog HDL

Verilog was started initially as a proprietary hardware modeling language by Gateway Design Automation Inc. around 1984. It is rumored that the original language was designed by taking features from the most popular HDL language of the time, called HiLo, as well as from traditional computer languages such as C. At that time, Verilog was not standardized and the language modified itself in almost all the revisions that came out within 1984 to 1990.

Verilog simulator was first used beginning in 1985 and was extended substantially through 1987. The implementation was the Verilog simulator sold by Gateway. The first major extension was Verilog-XL, which added a few features and implemented the infamous "XL algorithm" which was a very efficient method for doing gate-level simulation.

The time was late 1990. Cadence Design System, whose primary product at that time included Thin film process simulator, decided to acquire Gateway Automation System. Along with other Gateway products, Cadence now became the owner of the Verilog language, and continued to market Verilog as both a language and a simulator. At the same time, Synopsys was marketing the top-down design methodology, using Verilog. This was a powerful combination.

In 1990, Cadence recognized that if Verilog remained a closed language, the pressures of standardization would eventually cause the industry to shift to VHDL. Consequently, Cadence organized the Open Verilog International (OVI), and in 1991 gave it the documentation for the Verilog Hardware Description Language. This was the event which "opened" the language.

OVI did a considerable amount of work to improve the Language Reference Manual (LRM), clarifying things and making the language specification as vendor-independent as possible.

Soon it was realized that if there were too many companies in the market for Verilog, potentially everybody would like to do what Gateway had done so far - changing the language for their own benefit. This would defeat the main purpose of releasing the language to public domain. As a result in 1994, the IEEE 1364 working group was formed to turn the OVI LRM into an IEEE standard. This effort was concluded with a successful ballot in 1995, and Verilog became an IEEE standard in December 1995.

When Cadence gave OVI the LRM, several companies began working on Verilog simulators. In 1992, the first of these were announced, and by 1993 there were several Verilog simulators available from companies other than Cadence. The most successful of these was VCS, the Verilog Compiled Simulator, from Chronologic Simulation. This was a true compiler as opposed to an interpreter, which is what Verilog-XL was. As a result, compile time was substantial, but simulation execution speed was much faster.

In the meantime, the popularity of Verilog and PLI was rising exponentially. Verilog as a HDL found more admirers than well-formed and federally funded VHDL. It was only a matter of time before people in OVI realized the need of a more universally accepted standard. Accordingly, the board of directors of OVI requested IEEE to form a working committee for establishing Verilog as an IEEE standard. The working committee 1364 was formed in mid 1993 and on October 14, 1993, it had its first meeting.

The standard, which combined both the Verilog language syntax and the PLI in a single volume, was passed in May 1995 and now known as IEEE Std. 1364-1995.

After many years, new features have been added to Verilog, and the new version is called Verilog 2001. This version seems to have fixed a lot of problems that Verilog 1995 had. This version is called 1364-2001.

Timeline:

1984 Verilog-XL simulator and language developed by Gateway Design Automation
1987 Synopsys introduced a Verilog based synthesis tool.
1989 Cadence Design Systems acquired Gateway, and Verilog.
1990 Cadence placed the Verilog language in the public domain.
1995 Verilog HDL became (IEEE Std 1364-1995).
1997 Verilog VCS bought by Viewlogic
1997 Viewlogic bought by Synopsys
1998 Synopsys issues Verilog VCS
2001 A significantly revised version was published in 2001.

Scriptum - Free VHDL and Verilog Text Editor

Scriptum is a free text editor focused at VHDL and Verilog design, running on Windows and Linux. Using a multiple document window interface combined with tab pages it offers you an slick environment to edit VHDL, Verilog and other language files.

Even on extremely large files Scriptum offers exceptionally fast editing capabilities. You can avoid typing errors and dramatically improve your productivity by using keyword and header templates, identifier repeat, auto case conversion and one-touch line and column manipulation. To keep your text highly readable and well structured, you may choose syntax coloring and in- and out-commenting of selected text, as well as line numbering and indentation. Scriptum offers extensive documentation capabilities such as color coding, capitalization and indentation to make your numerous lines of code more readable. Scriptum is fully customizable to create a design environment that meets your needs. Design language, synthesis templates, keyword templates, and user interface are easily tailored to your requirements.

Features

  • Syntax color highlighting
  • Code folding for VHDL & Verilog
  • Manual Code folding
  • Code templates
  • Block and Column selections
  • Selection Indenting / De-indenting
  • Selection Commenting / Uncommenting
  • Tabs and spaces conversion
  • White space viewer

Language support

Scriptum comes standard with support for the following languages:
  • Verilog
  • VHDL
  • Tcl
  • SystemC
  • Perl
  • Java
  • Edif
  • C/C++
  • Actel PDC
  • Altera QSF
  • Xilinx UCF
Additional languages can be added using Scriptum configuration files.

Download Scriptum 10 now (FREE):

DOWNLOAD

4x1 Multiplexer Using 2x1 Multiplexer

Below Fig. shows the way to build 4x1 Multiplexer using three 2x1 Multiplexers.

4x1_mux_using_2x1_mux

Get free daily email updates!

Follow us!

Seven steps to a bootable Windows 7 thumb drive

Yesterday i thought to install windows 7 to my pc using a bootable windows 7 thumb drive, but creating a bootable USB drive for windows 7 is very complicated.

There are plenty of great tutorials out there that basically contain the same information as this one, but I thought I’d try to put together a how-to guide that made everything as simple as possible for people who might like the idea of Windows on a thumb drive but aren’t necessarily super comfortable with the actual process.
The only tangible thing you’ll need is a USB thumb drive with at least 4GB of capacity. I found a SanDisk Cruzer Contour worked best, while a Kingston DataTraveler was a bit fidgety at first but worked after a couple of tries.
It’s all pretty easy once you get going, so let’s begin.
Step One: Download Windows 7 Beta

Head over to http://www.microsoft.com/windows/windows-7/beta-download.aspxand jump through all the hoops to begin your download. For the sake of this exercise, we’ll assume that you’ll download the ISO file to your desktop. The download might take a while depending on your connection speed – set aside an hour to be on the safe side. Meanwhile, take a break. You’ve earned it!
Step Two: Download and install WinRAR

I hate guides that make me go download a bunch of software just to accomplish a task, so I apologize for making you do the same thing. I promise this will be the only third-party software that you’ll have to download and install, though, and it’s a great program to have on your computer anyway if you don’t already.
Head over to http://rarsoft.com/download.htm and click on the WinRAR 3.80 link to download the software. Once downloaded, install it.
Step Three: Extract the Windows 7 ISO file

Once Windows 7 Beta has finished downloading, you should see a file on your desktop with a bunch of gobbledygook in the name like “7000.0.081212-1400_client_en-us_Ultimate-GB1CULFRE_EN_DVD” or something cryptic like that. Right-click on that file and choose “Extract to [gobbledygook]” as shown in the above picture. When the smoke has cleared, you’ll have a gobbledygook folder on your desktop. I’ll continue to refer to this folder as “the gobbledygook folder” for the rest of this guide.
Step Four: Format a 4GB USB thumb drive

Head into “Computer” or “My Computer” and locate your USB thumb drive. In this instance, we’re dealing with the F: drive. Right click on the drive and choose “Format…” Then, we want to format the drive using the NTFS file system with the default allocation size, so make sure those two things are selected from the dropdown menus. You can check the Quick Format box, too, if it’s not already checked.
Step Five: The tricky BootSect.exe part

Now we’re going to go back to our extracted “7000.0.081212-1400_client_en-us_Ultimate-GB1CULFRE_EN_DVD” gobbledygook folder and open the “boot” folder, inside which we’ll find a file called “bootsect.exe” that we’ll need to use.
If you’re comfortable navigating folders in DOS, then you can skip this particular step. If you don’t like DOS or haven’t used it much, we’re going to copy this bootsect.exe file into an easy-to-access location. Copy the file (CTRL-C) and then open up “Computer” or “My Computer” and double-click your C: drive.

We’re going to paste (CTRL-V) that “bootsect.exe” file right into C: so we can easily access it in a moment. See it there? Fifth file from the bottom, all safe and sound?
Step Six: Do some Ninja-like stuff in DOS

Now we’re going to open the Command Prompt. If you’re using Vista or Windows 7, you’ll have to do the “Run as administrator” thing or we won’t be able to deploy our sweet flanking maneuvers that are coming up. So go into Programs > Accessories and then right-click on Command Prompt and choose “Run as administrator.”

Once we’ve got the Command Prompt up, we’re going to switch to our top-level C: folder by simply typing “cd\” without the quotes and hitting Enter (If you skipped Step Five above, then navigate yourself to the “boot” folder inside the extracted ISO folder on your desktop).

We should then have a straight-up C:> prompt. At this point, we’ll type the following (without the quotes):
“bootsect /nt60 f:”
We’re assuming the drive letter of your USB thumb drive is F:, so replace “f:” in the above phrase with whichever letter is assigned to your particular thumb drive. Hit enter and you should see:

Blah, blah, blah your bootcode is something something. This just means that the thumb drive is now ripe to auto-load when you boot up your computer.
Step Seven: Copy the Windows 7 files to the thumb drive

This is it! The final step! Open up your extracted Windows 7 gobbledygook folder and copy the files over to your thumb drive. You should be copying five folders and three files to the thumb drive. That is, don’t drag the gobbledygook folder over; open it up first and drag the stuff inside of it over instead.

It’ll take maybe about ten minutes for everything to copy over. Take another break! You’ve earned it!
When all is said and done, reboot your computer with the thumb drive in place and you should be greeted with the Windows 7 installation menu. If you’re not, you might have to tweak your BIOS settings to allow your computer to recognize a thumb drive as a bootable device.

Top 50 Interview Questions

Review these typical interview questions and think about how you would answer them. Read
the questions listed; you will also find some strategy suggestions with it.

1. Tell me about yourself:
The most often asked question in interviews. You need to have a short statement prepared
in your mind. Be careful that it does not sound rehearsed. Limit it to work-related items
unless instructed otherwise. Talk about things you have done and jobs you have held that
relate to the position you are interviewing for. Start with the item farthest back and work up
to the present.

2. Why did you leave your last job?
Stay positive regardless of the circumstances. Never refer to a major problem with
management and never speak ill of supervisors, co-workers or the organization. If you do,
you will be the one looking bad. Keep smiling and talk about leaving for a positive reason
such as an opportunity, a chance to do something special or other forward-looking reasons.

3. What experience do you have in this field?
Speak about specifics that relate to the position you are applying for. If you do not have
specific experience, get as close as you can.

4. Do you consider yourself successful?
You should always answer yes and briefly explain why. A good explanation is that you have
set goals, and you have met some and are on track to achieve the others.

5. What do co-workers say about you?
Be prepared with a quote or two from co-workers. Either a specific statement or a
paraphrase will work. Jill Clark, a co-worker at Smith Company, always said I was the
hardest workers she had ever known. It is as powerful as Jill having said it at the interview
herself.

6. What do you know about this organization?
This question is one reason to do some research on the organization before the interview.
Find out where they have been and where they are going. What are the current issues and
who are the major players?

7. What have you done to improve your knowledge in the last year?
Try to include improvement activities that relate to the job. A wide variety of activities can
be mentioned as positive self-improvement. Have some good ones handy to mention.

8. Are you applying for other jobs?
Be honest but do not spend a lot of time in this area. Keep the focus on this job and what
you can do for this organization. Anything else is a distraction.

9. Why do you want to work for this organization?
This may take some thought and certainly, should be based on the research you have done
on the organization. Sincerity is extremely important here and will easily be sensed. Relate
it to your long-term career goals.

10. Do you know anyone who works for us?
Be aware of the policy on relatives working for the organization. This can affect your answer
even though they asked about friends not relatives. Be careful to mention a friend only if
they are well thought of.

11. What kind of salary do you need?
A loaded question. A nasty little game that you will probably lose if you answer first. So, do
not answer it. Instead, say something like, That's a tough question. Can you tell me the
range for this position? In most cases, the interviewer, taken off guard, will tell you. If not,
say that it can depend on the details of the job. Then give a wide range.

12. Are you a team player?
You are, of course, a team player. Be sure to have examples ready. Specifics that show you
often perform for the good of the team rather than for yourself are good evidence of your
team attitude. Do not brag, just say it in a matter-of-fact tone. This is a key point.

13. How long would you expect to work for us if hired?
Specifics here are not good. Something like this should work: I'd like it to be a long time. Or
As long as we both feel I'm doing a good job.

14. Have you ever had to fire anyone? How did you feel about that?
This is serious. Do not make light of it or in any way seem like you like to fire people. At the
same time, you will do it when it is the right thing to do. When it comes to the organization
versus the individual who has created a harmful situation, you will protect the organization.
Remember firing is not the same as layoff or reduction in force.

15. What is your philosophy towards work?
The interviewer is not looking for a long or flowery dissertation here. Do you have strong
feelings that the job gets done? Yes. That's the type of answer that works best here. Short
and positive, showing a benefit to the organization.

16. If you had enough money to retire right now, would you?
Answer yes if you would. But since you need to work, this is the type of work you prefer. Do
not say yes if you do not mean it.

17. Have you ever been asked to leave a position?
If you have not, say no. If you have, be honest, brief and avoid saying negative things
about the people or organization involved.

18. Explain how you would be an asset to this organization
You should be anxious for this question. It gives you a chance to highlight your best points
as they relate to the position being discussed. Give a little advance thought to this
relationship.

19. Why should we hire you?
Point out how your assets meet what the organization needs. Do not mention any other
candidates to make a comparison.

20. Tell me about a suggestion you have made
Have a good one ready. Be sure and use a suggestion that was accepted and was then
considered successful. One related to the type of work applied for is a real plus.

21. What irritates you about co-workers?
This is a trap question. Think real hard but fail to come up with anything that irritates you.
A short statement that you seem to get along with folks is great.

22. What is your greatest strength?
Numerous answers are good, just stay positive. A few good examples:
Your ability to prioritize, Your problem-solving skills, Your ability to work under pressure,
Your ability to focus on projects, Your professional expertise, Your leadership skills, Your
positive attitude .

23. Tell me about your dream job.
Stay away from a specific job. You cannot win. If you say the job you are contending for is it, you strain credibility. If you say another job is it, you plant the suspicion that you will be dissatisfied with this position if hired. The best is to stay genetic and say something like:
A job where I love the work, like the people, can contribute and can't wait to get to work.

24. Why do you think you would do well at this job?
Give several reasons and include skills, experience and interest.

25. What are you looking for in a job?
See answer # 23

26. What kind of person would you refuse to work with?
Do not be trivial. It would take disloyalty to the organization, violence or lawbreaking to get
you to object. Minor objections will label you as a whiner.

27. What is more important to you: the money or the work?
Money is always important, but the work is the most important. There is no better answer.

28. What would your previous supervisor say your strongest point is?
There are numerous good possibilities:
Loyalty, Energy, Positive attitude, Leadership, Team player, Expertise, Initiative, Patience,
Hard work, Creativity, Problem solver

29. Tell me about a problem you had with a supervisor
Biggest trap of all. This is a test to see if you will speak ill of your boss. If you fall for it and
tell about a problem with a former boss, you may well below the interview right there. Stay
positive and develop a poor memory about any trouble with a supervisor.

30. What has disappointed you about a job?
Don't get trivial or negative. Safe areas are few but can include:
Not enough of a challenge. You were laid off in a reduction Company did not win a contract,
which would have given you more responsibility.

31. Tell me about your ability to work under pressure.
You may say that you thrive under certain types of pressure. Give an example that relates
to the type of position applied for.

32. Do your skills match this job or another job more closely?
Probably this one. Do not give fuel to the suspicion that you may want another job more
than this one.

33. What motivates you to do your best on the job?
This is a personal trait that only you can say, but good examples are:
Challenge, Achievement, Recognition

34. Are you willing to work overtime? Nights? Weekends?
This is up to you. Be totally honest.

35. How would you know you were successful on this job?
Several ways are good measures:
You set high standards for yourself and meet them. Your outcomes are a success.Your boss
tell you that you are successful

36. Would you be willing to relocate if required?
You should be clear on this with your family prior to the interview if you think there is a
chance it may come up. Do not say yes just to get the job if the real answer is no. This can
create a lot of problems later on in your career. Be honest at this point and save yourself
future grief.

37. Are you willing to put the interests of the organization ahead of your own?
This is a straight loyalty and dedication question. Do not worry about the deep ethical and
philosophical implications. Just say yes.

38. Describe your management style.
Try to avoid labels. Some of the more common labels, like progressive, salesman or
consensus, can have several meanings or descriptions depending on which management
expert you listen to. The situational style is safe, because it says you will manage according
to the situation, instead of one size fits all.

39. What have you learned from mistakes on the job?
Here you have to come up with something or you strain credibility. Make it small, well
intentioned mistake with a positive lesson learned. An example would be working too far
ahead of colleagues on a project and thus throwing coordination off.

40. Do you have any blind spots?
Trick question. If you know about blind spots, they are no longer blind spots. Do not reveal
any personal areas of concern here. Let them do their own discovery on your bad points. Do
not hand it to them.

41. If you were hiring a person for this job, what would you look for?
Be careful to mention traits that are needed and that you have.

42. Do you think you are overqualified for this position?
Regardless of your qualifications, state that you are very well qualified for the position.

43. How do you propose to compensate for your lack of experience?
First, if you have experience that the interviewer does not know about, bring that up: Then,
point out (if true) that you are a hard working quick learner.

44. What qualities do you look for in a boss?
Be generic and positive. Safe qualities are knowledgeable, a sense of humor, fair, loyal to
subordinates and holder of high standards. All bosses think they have these traits.

45. Tell me about a time when you helped resolve a dispute between others.
Pick a specific incident. Concentrate on your problem solving technique and not the dispute
you settled.

46. What position do you prefer on a team working on a project?
Be honest. If you are comfortable in different roles, point that out.

47. Describe your work ethic.
Emphasize benefits to the organization. Things like, determination to get the job done and
work hard but enjoy your work are good.

48. What has been your biggest professional disappointment?
Be sure that you refer to something that was beyond your control. Show acceptance and no
negative feelings.

49. Tell me about the most fun you have had on the job.
Talk about having fun by accomplishing something for the organization.

50. Do you have any questions for me?
Always have some questions prepared. Questions prepared where you will be an asset to
the organization are good. How soon will I be able to be productive? and What type of
projects will I be able to assist on? are examples.

GNU Emacs - A Customizable Text Editor


GNU Emacs is an extensible, customizable text editor—and more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing. The features of GNU Emacs include:

Content-sensitive editing modes, including syntax coloring, for a variety of file types including plain text, source code, and HTML. Complete built-in documentation, including a tutorial for new users. Full Unicode support for nearly all human languages and their scripts. Highly customizable, using Emacs Lisp code or a graphical interface. A large number of extensions that add other functionality, including a project planner, mail and news reader, debugger interface, calendar, and more. Many of these extensions are distributed with GNU Emacs; others are available separately.

Emacs 23 has a wide variety of new features, including:
  • Improved Unicode support.
  • Font rendering with Fontconfig and Xft.
  • Support for using X displays and text terminals in one session, and for running as a daemon.
  • Support for multi-file commits in distributed version-control systems (VC-dir).
  • New modes and packages for viewing PDF and postscript files (Doc-view mode), connecting to processes through D-Bus (dbus), connecting to the GNU Privacy Guard (EasyPG), editing XML documents (nXML mode), editing Ruby programs (Ruby mode), and more.

Popular Posts