Things are quickly (but not quickly enough) coming to a close. I spent 5 hours today demonstrating my senior design project with my partner at the ECE design day at state. The project was sponsored by AT, and was something that we will hopefully see live here on AT in the coming months. The project was simple: an upgrade engine that allows you to input your current computer config and an desired upgrade, after which it will output the expected performance gain of your new configuration. The demo went over very well and I'm pretty happy with the project. It will most likely be live after the site moves over to .NET in June.
As I mentioned in my last blog, my chip for my ASIC class works. A couple of you were asking what the chip does, so I'll entertain with a brief description. Basically the chip reads from a 10MB text file into a memory and scans through the text file stored in memory for words. Whenever it finds a word, it searches through a 1MB text file pulled into another memory to see if it can find a match. If a match is found, the word is then written to a third memory (1MB in size) and the process continues.
I employed a pipelined design for my project, with 12 major stages. Out of time constraints, I only kept one operation in flight at a time, but I made it flexible enough so that if I had more time keeping more than one operation in flight would not be a difficult thing to add. I was mainly focused on getting the thing to work by its deadline :)
The project seems relatively simple, but what complicates things is the fact that the memory interfaces are all of different widths. The text memory (10MB) bus is 256-bits wide, the dictionary memory (1MB) bus is 64-bits wide and the output memory (1MB) is 16-bits wide.
My total design was about 25,000 gates (assuming a 4:1 transistor to gate ratio, the design was probably under 100K transistors), and unfortunately I don't know the net size for the Verilog libraries I was using otherwise I would be able to report die area. I didn't do much space optimization in my design, again as I was mostly interested in functionality, but the project did give me the opportunity of dealing with the balancing act that designers must face when they are bridging multiple buses. The graphics guys have this pretty bad as they have a very wide and fast memory bus (tens of gigabytes per second) yet a relatively narrow and slow connection to the outside world (until PCI Express comes around). It was fun, especially once I got it working, but I'm glad that it's over. It'll be completely over tomorrow night when I finish my demonstration of the chip and its functionality to the TA and turn in my report.
My ASIC professor is considering dropping the final because of the difficulty of the project, which would definitely be appreciated. I'm pretty much ready to be done with everything at this point, too bad I still have at least 3 finals to worry about and one last compiler project before May 11th.
I'm pretty beat from this week already, but before I go (not to bed, but to compiler homework) I will provide closure in the form of an explanation of the title of tonight's blog:
I would like to petition for high g-force cup holders in cars that are driven "spiritedly." My reasoning being an experience I had earlier tonight. I was driving with a drink securely in the cupholder, I took a hard right turn thinking that the drink would stay put (my left hand was at 12 o'clock), the drink proceeded to fly up and out of the cupholder, perform a 180 at which point I saved what was left of it with my left hand (conveniently still at 12 o'clock from the turn). Needless to say, I coked everywhere. I think I got most of it up...I hope, dried coke is so painful to get rid of, especially in random crevices in a car. I didn't keep drinks in my cars for a while (ok mostly because I didn't have cupholders during those years), but I think if I just make an honest effort to drive less spiritedly with a drink in the car I'll be fine...or if high g-force cup holders became an option on most cars :)
Tis all for now folks, I'm going to step away from the computer for a few and then get back to work.
As I mentioned in my last blog, my chip for my ASIC class works. A couple of you were asking what the chip does, so I'll entertain with a brief description. Basically the chip reads from a 10MB text file into a memory and scans through the text file stored in memory for words. Whenever it finds a word, it searches through a 1MB text file pulled into another memory to see if it can find a match. If a match is found, the word is then written to a third memory (1MB in size) and the process continues.
I employed a pipelined design for my project, with 12 major stages. Out of time constraints, I only kept one operation in flight at a time, but I made it flexible enough so that if I had more time keeping more than one operation in flight would not be a difficult thing to add. I was mainly focused on getting the thing to work by its deadline :)
The project seems relatively simple, but what complicates things is the fact that the memory interfaces are all of different widths. The text memory (10MB) bus is 256-bits wide, the dictionary memory (1MB) bus is 64-bits wide and the output memory (1MB) is 16-bits wide.
My total design was about 25,000 gates (assuming a 4:1 transistor to gate ratio, the design was probably under 100K transistors), and unfortunately I don't know the net size for the Verilog libraries I was using otherwise I would be able to report die area. I didn't do much space optimization in my design, again as I was mostly interested in functionality, but the project did give me the opportunity of dealing with the balancing act that designers must face when they are bridging multiple buses. The graphics guys have this pretty bad as they have a very wide and fast memory bus (tens of gigabytes per second) yet a relatively narrow and slow connection to the outside world (until PCI Express comes around). It was fun, especially once I got it working, but I'm glad that it's over. It'll be completely over tomorrow night when I finish my demonstration of the chip and its functionality to the TA and turn in my report.
My ASIC professor is considering dropping the final because of the difficulty of the project, which would definitely be appreciated. I'm pretty much ready to be done with everything at this point, too bad I still have at least 3 finals to worry about and one last compiler project before May 11th.
I'm pretty beat from this week already, but before I go (not to bed, but to compiler homework) I will provide closure in the form of an explanation of the title of tonight's blog:
I would like to petition for high g-force cup holders in cars that are driven "spiritedly." My reasoning being an experience I had earlier tonight. I was driving with a drink securely in the cupholder, I took a hard right turn thinking that the drink would stay put (my left hand was at 12 o'clock), the drink proceeded to fly up and out of the cupholder, perform a 180 at which point I saved what was left of it with my left hand (conveniently still at 12 o'clock from the turn). Needless to say, I coked everywhere. I think I got most of it up...I hope, dried coke is so painful to get rid of, especially in random crevices in a car. I didn't keep drinks in my cars for a while (ok mostly because I didn't have cupholders during those years), but I think if I just make an honest effort to drive less spiritedly with a drink in the car I'll be fine...or if high g-force cup holders became an option on most cars :)
Tis all for now folks, I'm going to step away from the computer for a few and then get back to work.
26 Comments
View All Comments
Anonymous - Saturday, May 22, 2004 - link
#22: Why don't you keep your mouth shut as well? I highly doubt that calling someone an asshole just for a blog entry is respectful. It would be great if Anand decides to stop doing weblogs esp. when people like you are calling him names just because he hasn't had the time to blog. His life is much busier that yours or mine. And don't forget that he has been working on this site for 7 years, which is a long time. You probably can't even work 8 hours a day without getting tired and Anand receives conference calls, review requests at all times of the day.Just calm down. Once again, It would be really sweet if Anand stops his blog and all your morons die because of it. So much fun and it would get rid of some problems in this world...
wassup4u2 - Friday, May 21, 2004 - link
I think we need another blog soon Big Guy! These people are weirding me out... I think they're going wacko.me - Friday, May 21, 2004 - link
Lol...Anand probably finally cracked under the pressure...completely gave up tech...moved to Sedona, AZ....is living in a teepee...and probably painting pictures with his own feces....poor guy ;-)Anonymous - Friday, May 21, 2004 - link
wow, are y'all out of junior high yet?..Anonymous - Friday, May 21, 2004 - link
#20, i laughed so yes it is. Why dont you follow your own advice.Cliff - Friday, May 21, 2004 - link
just a note...just so we know you're alive (-:Anonymous - Thursday, May 20, 2004 - link
#19: Why don't you shut up? It's not even funny.Anonymous - Wednesday, May 19, 2004 - link
anand, some of us require atleast one blog of yours to survive one work week. blog you asshole!cc - Wednesday, May 19, 2004 - link
11th month?Anonymous - Wednesday, May 12, 2004 - link
He'll be back, he said he would be done by the 11th. Let's start the fun Anand! :)