Well, behavioral is just 2.4ns (including the buffer register at the adder output), but the structural circuit without the buffer register already have 8.1ns delay and a lot of glitches.
Computer Engineering Thread, # 67 members already :D #
Computer Engineering Thread, # 67 members already :D #
|
|
Apr 2 2006, 10:34 PM
Return to original view | Post
#61
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
Today js changed my 8-bit adder's VHDL from structural coding to behavioral coding. It is Sooooo much faster with behavioral and save a lot of troubles portmapping
Well, behavioral is just 2.4ns (including the buffer register at the adder output), but the structural circuit without the buffer register already have 8.1ns delay and a lot of glitches. |
|
|
|
|
|
Apr 3 2006, 10:24 AM
Return to original view | Post
#62
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(harrychoo @ Apr 3 2006, 09:14 AM) QUOTE(ikanayam @ Apr 3 2006, 09:55 AM) For a critical circuit (like an adder, ALU, etc) it's always better to hand tune it at gate/transistor level. Synthesizers don't generate optimal speed and size. Problem is his tuning was something you would do for an ASIC, while he was using a compiler for a FPGA, so it's not optimal which is why i think you see the difference. I use structural in the 1st place to generate my custom adder, well of course it screwed up bcoz the CPLD might not have some predefined LUT or Cell for tat purpose. Fishy i still like the ASIC leh, kinda cool to have everything start from scratch and slowly fine tune. Argghh... still angry y my uni doesnt have the Cadence tool I'm using Altera MaxPlus 2 with Max7000B CPLD This post has been edited by charge-n-go: Apr 3 2006, 10:25 AM |
|
|
Apr 3 2006, 10:55 AM
Return to original view | Post
#63
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(ikanayam @ Apr 3 2006, 10:46 AM) Maybe you can look into optimization for that kind of logic, optimization is always fun and it's good experience. I've tried various methods, behavioral still the best Human optimization lost to compiler optimization, damnit Left 14 days before report submission for my CPU. I hate documentation !! |
|
|
Apr 3 2006, 01:23 PM
Return to original view | Post
#64
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(harrychoo @ Apr 3 2006, 12:27 PM) Documentation is something that engineer hate but cannot avoid..lol I'm simulating with Maxplus 2, but final implementation will be in Spartan 3 Starter Kit CPLD. Still waiting for its arrival like now i suffer doin my report for my project...i also lazy to do but if not, my boss would kill me btw, i use Xilinx Spartan XC3000 last time...old FPGA I'm not sure if the VHDL code can be transferred to Xilinx successfully. THeoretically its possible la, but still scared ler |
|
|
Apr 3 2006, 04:33 PM
Return to original view | Post
#65
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
Tat's what I'm afraid of. It may work flawlessly and fast enough in Max7000B, but when it is synthesize in Spartan 3, maybe got minor glitches during the positive clock edge, then die liao
Well, js pray i can successfully transfer it, if not presentation time will kena from moderator btw X10A Freedom, where r u studying? May i know where u got the tools to construct yr butterfly layout? |
|
|
Apr 3 2006, 07:00 PM
Return to original view | Post
#66
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(X10A Freedom @ Apr 3 2006, 06:18 PM) studying at kbu, the butterfly section is not done by me oh.. KBU got mentor graphic, but MMU doesnt have ler it's using mentor graphics ic flow, i use my school's pc to capture the screen as such tools aren't available as freely as Altera products I tried to find lanun in LYP, found nothing. hahaha. btw, do u got any jobs after graduation? |
|
|
|
|
|
Apr 3 2006, 11:42 PM
Return to original view | Post
#67
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
ahah, it's called the computer engineering thread, sure more on digital stuff la
wanna talk about digital signal processing? DFT and FFT anyone? X10A Freedom: Altera questions arent that hard. If u hv done layouting b4, it should b easy for u. I've tried and confident but end up not called for interview, js bcoz I'm not 1st class student |
|
|
Apr 4 2006, 12:05 AM
Return to original view | Post
#68
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(harrychoo @ Apr 3 2006, 11:46 PM) i used to like DFT and FFT when in college but since now hardly can use these kind of skill..so forget oledi..lolz hmm... where r u working now ar?now my skill is more towards embedded system and power related design..lolz yah, Altera interview questions are quite easy for fresh grad but not me, coz forget many things oledi well, my answer is same as my fren (we sit side by side n compare la), but he was called not me, moreover we apply for the same job position so i suspect is my CGPA ler, he is way higher than me QUOTE(X10A Freedom @ Apr 3 2006, 11:50 PM) well, when i was attempting the questions, i haven't really learn layouts in detail yet(they only gave me like few days just to prepare U mean ASIC? AFAIK, they only want experience engineer or fresh grad in this kinda field, maybe u can la since u did layouting after they processed the answers for the questions(which took quite long), i've mostly done on my layout, but too bad, i wasn't call up for the interview(though some of my classmates did but only 2-3 person in total was really confirmed after the interview) but my lect was telling me that the ic design department might want to go for a 2nd round recruitment.......so i'm hoping that this time, i'm well prepare for it |
|
|
Apr 4 2006, 04:57 PM
Return to original view | Post
#69
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
welcome [ r u g a ].
ERmm.. anyone knows how to extract certain bit from 'add' function? Let's say, SIGNAL a,b : STD_LOGIC_VECTOR (15 DOWNTO 0); SIGNAL reg : STD_LOGIC_VECTOR (7 DOWNTO 0); reg <= (a + b) from 15 downto 8. What i mean is i need info from the added result A+B (bit 8 to bit 15) into reg. How can I actually do it in 1 clock only? Thanx This post has been edited by charge-n-go: Apr 4 2006, 05:01 PM |
|
|
Apr 4 2006, 08:03 PM
Return to original view | Post
#70
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(X10A Freedom @ Apr 4 2006, 06:56 PM) add another signal I've tried this actually:RESULT : STD_LOGIC_VECTOR (15 DOWNTO 0); reg <= result[15..8]; i think should be written this way or else it will be reg <= result[15 downto 8]; add_result <= A+B; reg <= add_result( 15 downto 8); But using this method, A+B will be stored in add_result upon clock, and the previous clock add_result will be input into reg. Actually i need the result immediately during current clock, tat's wat i meant by 1 cycle QUOTE(harrychoo @ Apr 4 2006, 07:02 PM) reg must in 8 bit by definition? highlighted is not the actual syntax right? no "from 15 downto 8" right? Ya, there's no such thing as from 15 downto 8, js my description can i know in 1 clock means that must in 1 instruction line only? sorry, too long din do vhdl oledi.. is it possible to shift a and b bits 1st before adding? If u wanna shift b4 add, can make it this way: reg <= ('0' & a(7 downto 1)) + ('0' & b(7 downto 1)) Well, imho, sometimes 1 clock means that must be in 1 instruction line, and sometime it is not necessary. Let's say : IF (clk'EVENT AND clk='1') a<=b; c<=d; ^ this one can finish in 1 clock. however, IF (clk'EVENT AND clk='1') a<=b; c<=a; ^ this one will finish in 1 clock too, but c<=a is taking the A value on previous clock instead of value from latest B value. |
|
|
Apr 4 2006, 09:39 PM
Return to original view | Post
#71
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(X10A Freedom @ Apr 4 2006, 08:09 PM) ok, then update 'reg' outside of the clk event(after the end process statement) i tried b4, but the result isnt correct.it should save u 1 clk cycle THis is actually my code description: » Click to show Spoiler - click again to hide... « Anyway, welcome e-jump QUOTE but how do we update the reg outside clock? add_result will be sent directly to bus, thus tap bit 15-8 to reg? I dont think can update if there is no clock This post has been edited by charge-n-go: Apr 4 2006, 09:40 PM |
|
|
Apr 4 2006, 11:30 PM
Return to original view | Post
#72
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(X10A Freedom @ Apr 4 2006, 10:48 PM) wierd.....it should work since Outside process statement ar. I nv tried, that add_result <= A+B; so by just putting this code reg <= add_result( 15 downto 8); at outside of the process statement will meant that you are tapping the 15 downto 8 bus to 'reg' I just put it in process, but included in the ELSE branch (else when no clock signal then reg <= add_result (15 downto 8); I think maybe I should construct another CASE statement out of the process and try again. Thanx for all yr help Hmm... i think i'll try agian, maybe some other parts are wrong |
|
|
Apr 4 2006, 11:34 PM
Return to original view | Post
#73
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
|
|
|
|
|
|
Apr 6 2006, 09:47 PM
Return to original view | Post
#74
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(harrychoo @ Apr 5 2006, 12:29 AM) how about do like this? having two process? My fren tried, but not really working nvm, i'll try another method. thx everybody for helping. QUOTE(iZuDeeN @ Apr 6 2006, 09:39 PM) i only learnt about 0 resistance, which happens to superconductor at very very low temperature. -ve resistance? i need somebody to enlighten me too |
|
|
Apr 6 2006, 11:22 PM
Return to original view | Post
#75
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(David83 @ Apr 6 2006, 09:52 PM) hahaha, i think we learnt a bit too in physical electronics. I oso forgotten liao QUOTE(iZuDeeN @ Apr 6 2006, 09:58 PM) Negative Differential Resistance still has a +ve static resistance. Negative differential resistance means, the resistance value is decreasing over time mah, rite?And yes, 0 resistance is the ideal condition but it is almost impossible to achieve with current material that we have... But a grounding wire has -ve resistance? That simply amaze me... 0 resistance is ideal, and super conductors only has very very near to zero resistance. -ve resistance is like..... the object exist to have some energy supply (instead of resisting, it is giving energy). This post has been edited by charge-n-go: Apr 6 2006, 11:23 PM |
|
|
Apr 6 2006, 11:37 PM
Return to original view | Post
#76
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(iZuDeeN @ Apr 6 2006, 11:29 PM) that is what i said, which means it impossible that a normal wire giving out energy... LoL, i were u, i oso dunno wanna laugh or cry towards this senior I dunno how to explain to my frend that his reading is wrong.... actually im new to the job and he's senior than me, so if i go to my immediate supervisor and tell this thing, my frend my think i want to 'show power'... Well, if he said -ve terminal then logical la, -ve resistance is stooopig. |
|
|
Apr 20 2006, 01:42 PM
Return to original view | Post
#77
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
Yes, finally done with my 8-bit CPU FYP. It is working !!
|
|
|
Apr 23 2006, 04:17 PM
Return to original view | Post
#78
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
QUOTE(shadow_dweller @ Apr 21 2006, 06:43 PM) reporting in ! going to grad liao only u report ar... Boss charge-n-go ... hahaha :Þ QUOTE(hao @ Apr 22 2006, 02:01 PM) What about google? i think SFG is useful for defining the input/output of a system. |
|
|
May 4 2006, 01:46 AM
Return to original view | Post
#79
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
|
|
|
May 11 2006, 03:16 PM
Return to original view | Post
#80
|
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Senior Member
4,060 posts Joined: Jan 2003 From: Penang / PJ |
Hey dude, js read your slide. It is really awesome !!
Well, find 1 day i shall learn all these from u |
| Change to: | 0.0293sec
0.91
7 queries
GZIP Disabled
Time is now: 22nd December 2025 - 07:30 AM |