Re:Yeah but, chip making isn't as easy as writing
on
Open-Source Processors
·
· Score: 1
>Designed chips is very much like programing.
Yeah, if you want gigantic, slow, hot, wasteful chips.
Of course, when it comes to performance and efficiency, designing chips is not very much like programming (I assume, I'm not a chip designer). But that also applies to high performance software like e.g. kernel scheduler or memory management. Then programming isn't very much like programming either.
For the most time you will get away with standard knowledge and not looking beyond the horizon of your high level language. When it comes to performance then you have to know stuff about pipelining and cache lines and help the ignorant compiler by modifying your source to fit the wanted assembler output or directly include a few lines of assembler in the critical parts. So, in that sense, designing chips is like programming.
The startup costs for me to start making open source software are very low (assuming I have a computer)
Startup costs to start making open source hardware: use a simulator or/and get a board with a programmable logic device (less than two hundred dollars). Low cost, assuming you have a computer (with a parallel or serial port for downloading to hardware).
the cost of failure/screwup is low (an hour or so of my time to compile).
Cost of failure/screwup: time to fix and recompile. Then simulate or download to PLD. Low cost.
What are you going to start with? A chip that beeps out 'hello world' in morse over a pizeo?
Apparantly making CPUs is rather easy so this what most textbooks on hardware design in, say, VHDL give as the first complete example that goes beyond some simple ALU. Go look at the source of an 8 bit processor that is available for download. It's amazingly simple in a high level language like VHDL.
There are lots of people here talking how open source won't work for hardware designs since it's so damn a) cost expensive and b) time expensive (does not allow experimenting) to get a chip design through a fab. So what? Reconfigurable hardware is out there and has been for quite some time.
You get a standard programmable logic device from some company like Altera (there are more, this is just the one I remember right now) and then you can program it with any chip design you want (within the complexity boundary set by the chip in question). These can do from 25MHz up to 100MHz, so you won't be able to replace your 1GHz Athlon with it, tough. Still it's usable for a lot of things. Remember, PCI runs at 33MHz or 66MHz. An MP3 decoder can be done with a lot less than 25MHz.
The software (Windows, since the control interface of the PLD is usually proprietary) compiles your Verilog or VHDL code into the required form which can be uploaded into the chip. So hardware can be designed much like software with the same round trip times. And no, you won't have to write an adder using NAND gates, you just say in VHDL "a And once you have a nice working design you can use the same source to get it through a fab.
But often you don't want a fab at all. Fabs are expensive and production has a long latency (something like 4 to 6 weeks). You can just give the PLD a finished ROM and use that as a production system. One MP3 player was only two months on market before being replaced by a successor, so it was shipped with PLDs. Only if you have really large numbers to produce, the product stays long enough on the market or the speed of a PLD isn't enough is a fab really cost efficient. I guess we'll see a lot more PLDs in shipped products in the future.
There are quite a number of CPUs for PLDs available already. Some PLD companies license CPU designs for use with their devices, e.g. I have an Altera APEX device here in front of me (not mine, a bit expensive) which comes with a NIOS softcore. Which is configurable: choose 16 or 32 bit, the number of address bits, how many registers, number of positions the shifter can shift in one cycle,... depending on how much room you need on the device for your own design (I'm not a hw designer myself (yet), I have to program the NIOS).
Other designs are freely available under open source / free licenses (lots of stuff, not restricted to CPUs), including a SPARC CPU with peripherals by the European Space Agency under LGPL. If your PLD is large enough, you can put a whole computer on that chip (CPU, ROM, RAM, serial port etc.).
And for starters, you can get a complete development board with a PLD and software for about $150. A small CPU (no 32 bit thing with lots of registers) would fit, and it's enough for some hacking to get up to speed.
1. Our kind of life is very specific. Virtually all of our proteins have a right handed turn, and and our sugars a left.
Fine so far.
This is almost certainly do to the fact that the bright young stars we formed near, polarized the cold molecular clouds with their UV radiation. That doesn't happen everywhere, and that in turn, may be essential for the formation of DNA/RNA type life.
I am not a molecular biologist (or whoever deals with that specific thing), but from what I know the left and right handed versions are always equally common in lifeless systems (and equally created in chemical synthesis). Only in living stuff a specific version is always created/used.
Life could just as well be formed from the different handed version. That all life on earth shares the same handedness when it comes to these parts is not a proof that it couldn't be done otherwise, it only shows us that all life descends from that one proto-life structure that just happened to use right handed proteins and then successfully reproduced.
It may also show that one form won over the other in the early days of life, since either handedness is possibly dangerous (toxic?) for the other handedness (see the Contergan scandal for an unvoluntary molecule handedness experiment on humans).
Don't forget that the train itself will probably be computer controlled
More like remote controlled. The track is the engine, the train itself doesn't have to have a lot of technology inside. You could rip out all technology but the magnets out of the train and it would still go full speed. It has to have batteries (for stops) and induction wires (powered from the track) to get any power at all for inside lighting etc.
If the train is piloted (it probably will be, it's a passenger psychology thing), then all commands go to a base station which controls the track.
But would you really think that anyone could hold something like that back? Any government and their military would have a really big interest in free energy anywhere. Energy companies would just be shoved aside.
However it is not a technology. It's a bunch of wild theories that don't look like they'd play well with the most basic laws of nature (creating energy out of nothing).
Black holes *appear* (i'm sure they don't really) to violate the conservation of energy when two virtual particles are created near the event horizon, and one gets sucked in but the other doesn't
The energy in the now real particle flying away is taken from the black hole's mass. That's the process that causes black holes to lose mass and eventually disappear.
There also used to be a company (can't remember the name) that sold a family of chips that allowed you to build a processor.
AMD. The Am2910 being the microsequencer, Am2901 4 bit ALU and Am2904 word logic module. Haven't seen one as a real object, but simulated this is the machine all CS students at TU Munich have to do some microprogramming on.
Should be possible with Athlon, too. You can leave CPU sockets without CPU in Intel SMP configurations and the remaining CPUs are used properly. However, you have to put in termination dummies in order to not degrade the CPU bus signal quality. Since AMD uses the Alpha way for SMP, it won't have a CPU bus but separate ports on the chipset for every CPU, so you may not need terminators for those.
Anyone have a medium length (40-64 bit) RSA public key that they don't use?
I'm being offtopic here (so what), but your understanding of RSA (or public key encryption in general) to be flawed. A short RSA key would be 512 bits, which is considered insecure. A medium length somewhere around 768 bits, with keys considered secure at around at least 1024 bits.
Asymmetric keys tend to have that length (with elliptic curve based algorithms having somewhat shorter keys). A medium length of 56 to 64 bits would apply to symmetric encryption. 40 bits is actually rather short.
I assume this vulnerability comes from the program being allowed to execute instructions in the data area, just as the buffer overflow problems arise from storing the stack in executable pages.
Data area is executable. Think just-in-time compilers and trampoline code (the latter is often put on stack, at least gcc does for its extension of local functions). Even if you wanted to make them non-exec (would for a week at most, then exploits will have adapted), there are hardware limitations in that. Stupid x86 MMU (and some other architectures) can not distinguish between readable and executable, it is either nothing or both. The non-exec stack on x86 can only be done through segment hackery, and I don't think you can extend it to non-exec data.
Just think: the stack can always be written and includes return pointers and function args. If neither data nor stack were executable, you can still smash a return to execve() and a parameter "/bin/sh" (or any other function or args) on the stack. Once you have a root shell, who cares about some toys like non-exec stack and data?
I know that gas (GNU assembler) stores constant data together with the program code. Guess that makes it difficult to separate them when they are loaded into memory...
Of course it does (and therefore gcc, too). If they were stored in the data section they wouldn't be constant. Program code & constant data (const vars, literal strings) go into text, initalized data into data and unitialized data into bss. That's where they belong.
Just because the GPL says that someone found in breach of license gives away other rights, does not necessarily mean that the victi- er, breachor actually would lose their rights to the portions of software they actually did contribute or bundle.
The GPL grants rights on a copyrighted work which you do not have by default. It ceases to grant them when you violate the GPL. That it is written down explicitly instead of just being implied should not make much of a change, not even in court.
Until I saw an SGI machine running a data mining (I think that what they called it) tool. Guess what, the interface was exactly like that one on Jurassic Park.
What could be seen as the 3D data navigator in Jurassic Park was, in fact, that SGI program you're referring to. IMDb's trivia section on that movie mentions it.
Technically it was an IRIX system, but I digress.
Which is (one development branch of) Unix. Every OS looking like out there descends from the original Unix and branched off at one time in Unix history (including the BSDs) with the notable exception of Linux, which was programmed from scratch and is therefore often (and correctly) called a Unix-like OS.
I wonder how many are boxes left running so the user can SSH in to gain access to his or her files?
Hardly any. Who can afford paying a few hundred $ per month for a leased line? Flatrates slowly start to emerge in Germany, at prices (for the complete package) from $30 to $75, per month, analog or ISDN. And these have explicitly non-leased-line contracts, i.e. connection is cut after a certain time and they will get down on you when they notice you are online 24 hours a day.
Remember that Sony Camcorder that had infra red capabilities? [...] But I would give anything to somebody who has a piece left.
In fact many/most(?) modern camcorders can see infrared, as you can easily find out by pointing a remote control at one, pressing a button and see the IR LED flash in the camcorder's picture. This has something to do with improving color, I think.
In fact, some of the digital camcorders come with a night shot feature: they have IR LEDs for illumination and record b/w IR video. This lets you film with absolutely zero visible light. Some models with that feature (absolutely incomplete, this list is from an article about digital camcorders supporting still picture saving and just happens to mention this) are Sharp VL-PD6S and the Sony models PC5E, PC100E and TRV320E.
If programmers write in assembly, they get cool features, such as extremely modular code which is only loaded in pieces (making for much lower memory consumption and faster execution).
Oh cool. With an MMU you can do such neat things like demand loading executables, which is what Linux does since version 0.0x and what any other Unix with any respect for itself does. Only the code which is executed gets loaded, without anyone except the kernel having to care about that.
The airlines I have experience with ban all electronic devices during take off and landing and allow laptops w/o CD-ROM and other apparantly harmless devices during flight.
Radio signal emitting devices are of course banned throughout the whole flight but CD-ROMs, audio CD players and probably MiniDisc (not sure on that one) are included in that ban.
Maybe they hardened the board electronics against interferences nowadays. Maybe they sacrifice security for market share ("If you don't allow me to use my CD-ROM I'll take another airline in the future, I tell ya!").
I won't flame ya, but I'll throw out this: when I'm flying coast to coast, I'd much rather watch a movie of my choice on my laptop then watch a dull in-flight movie.
And flight personnel didn't complain? Last time I checked airlines did allow the use of laptops during flight, but CD players (and in extension DVD players) were still strictly forbidden due to interference possibilities with airplane electronics.
Or did you just copy the whole DVD to harddisk and played from there?
Anyone know of a motherboard that has more than one AGP slot? Is this technically possible?
Technically possible, yes. But since AGP is a port and not a bus, you'd have to find a chipset that has more than one AGP port. I've never heard of any such beast existing. Easiest way would be to have those built under contract by VIA, Intel or someone... if you have a few millions to spare.
Why can't they say something like, "Well, it looks like they weren't really trying to take our trademark; why don't we just be friendly and understanding and work something out?" Instead of, "Ha ha ha ha! We're going to sue your fucking ass!"
Technically, that is what they are doing (the "friendly" approach) and that is what an "Abmahnung" is. It is a request to stop violating a trademark without actually taking it to court (but with the implicit or explicit threat of doing so if the other doesn't back off).
Now the thing is that they charge lawyer's costs with that (which are presumably a lot lower than the costs when you lose in court). This has in the last years led to widespread abuse of this system (a certain Munich based lawyer became very notorious for that) by trademarking incredibly common terms (Explorer, Webspace,...) then sending out serial requests with lawyer's charges of around $500-$1000.
They claim that this is their cost, in fact it's nothing more than letters created with the serial letter function of some word processor. They bet on the fact that none of their victims has the money to spare to risk going to court and settle this for real (they still might lose) or that they have enough money that they don't bother. Microsoft is paying royalties to some small company for using the trademark "Explorer" in Germany.
It's also possible that spammers figure anyone living in Czechoslovakia isn't going to be a good candidate for musical toilet seats or whatever they're peddling.
Yeah right. My.de address also doesn't stop spammers from sending me offers that are (as they explicitly state in their spam) valid in US only.
For spammers, a valid address is a good address. They don't care about the 99.99999% of recipients that are absolutely uninterested and annoyed, whether they live in the US, Japan or on the moon is irrelevant to them.
>Designed chips is very much like programing.
Yeah, if you want gigantic, slow, hot, wasteful chips.
Of course, when it comes to performance and efficiency, designing chips is not very much like programming (I assume, I'm not a chip designer). But that also applies to high performance software like e.g. kernel scheduler or memory management. Then programming isn't very much like programming either.
For the most time you will get away with standard knowledge and not looking beyond the horizon of your high level language. When it comes to performance then you have to know stuff about pipelining and cache lines and help the ignorant compiler by modifying your source to fit the wanted assembler output or directly include a few lines of assembler in the critical parts. So, in that sense, designing chips is like programming.
The startup costs for me to start making open source software are very low (assuming I have a computer)
Startup costs to start making open source hardware: use a simulator or/and get a board with a programmable logic device (less than two hundred dollars). Low cost, assuming you have a computer (with a parallel or serial port for downloading to hardware).
the cost of failure/screwup is low (an hour or so of my time to compile).
Cost of failure/screwup: time to fix and recompile. Then simulate or download to PLD. Low cost.
What are you going to start with? A chip that beeps out 'hello world' in morse over a pizeo?
Apparantly making CPUs is rather easy so this what most textbooks on hardware design in, say, VHDL give as the first complete example that goes beyond some simple ALU. Go look at the source of an 8 bit processor that is available for download. It's amazingly simple in a high level language like VHDL.
There are lots of people here talking how open source won't work for hardware designs since it's so damn a) cost expensive and b) time expensive (does not allow experimenting) to get a chip design through a fab. So what? Reconfigurable hardware is out there and has been for quite some time.
You get a standard programmable logic device from some company like Altera (there are more, this is just the one I remember right now) and then you can program it with any chip design you want (within the complexity boundary set by the chip in question). These can do from 25MHz up to 100MHz, so you won't be able to replace your 1GHz Athlon with it, tough. Still it's usable for a lot of things. Remember, PCI runs at 33MHz or 66MHz. An MP3 decoder can be done with a lot less than 25MHz.
The software (Windows, since the control interface of the PLD is usually proprietary) compiles your Verilog or VHDL code into the required form which can be uploaded into the chip. So hardware can be designed much like software with the same round trip times. And no, you won't have to write an adder using NAND gates, you just say in VHDL "a And once you have a nice working design you can use the same source to get it through a fab.
But often you don't want a fab at all. Fabs are expensive and production has a long latency (something like 4 to 6 weeks). You can just give the PLD a finished ROM and use that as a production system. One MP3 player was only two months on market before being replaced by a successor, so it was shipped with PLDs. Only if you have really large numbers to produce, the product stays long enough on the market or the speed of a PLD isn't enough is a fab really cost efficient. I guess we'll see a lot more PLDs in shipped products in the future.
There are quite a number of CPUs for PLDs available already. Some PLD companies license CPU designs for use with their devices, e.g. I have an Altera APEX device here in front of me (not mine, a bit expensive) which comes with a NIOS softcore. Which is configurable: choose 16 or 32 bit, the number of address bits, how many registers, number of positions the shifter can shift in one cycle, ... depending on how much room you need on the device for your own design (I'm not a hw designer myself (yet), I have to program the NIOS).
Other designs are freely available under open source / free licenses (lots of stuff, not restricted to CPUs), including a SPARC CPU with peripherals by the European Space Agency under LGPL. If your PLD is large enough, you can put a whole computer on that chip (CPU, ROM, RAM, serial port etc.).
And for starters, you can get a complete development board with a PLD and software for about $150. A small CPU (no 32 bit thing with lots of registers) would fit, and it's enough for some hacking to get up to speed.
Some links for open source hardware: OpenCores, Free IP, Google Web Directory - Computers > Hardware > Open Source, LEON-1 (the ESA SPARC core).
I'll just comment the following point:
1. Our kind of life is very specific. Virtually all of our proteins have a right handed turn, and and our sugars a left.
Fine so far.
This is almost certainly do to the fact that the bright young stars we formed near, polarized the cold molecular clouds with their UV radiation. That doesn't happen everywhere, and that in turn, may be essential for the formation of DNA/RNA type life.
I am not a molecular biologist (or whoever deals with that specific thing), but from what I know the left and right handed versions are always equally common in lifeless systems (and equally created in chemical synthesis). Only in living stuff a specific version is always created/used.
Life could just as well be formed from the different handed version. That all life on earth shares the same handedness when it comes to these parts is not a proof that it couldn't be done otherwise, it only shows us that all life descends from that one proto-life structure that just happened to use right handed proteins and then successfully reproduced.
It may also show that one form won over the other in the early days of life, since either handedness is possibly dangerous (toxic?) for the other handedness (see the Contergan scandal for an unvoluntary molecule handedness experiment on humans).
More like remote controlled. The track is the engine, the train itself doesn't have to have a lot of technology inside. You could rip out all technology but the magnets out of the train and it would still go full speed. It has to have batteries (for stops) and induction wires (powered from the track) to get any power at all for inside lighting etc.
If the train is piloted (it probably will be, it's a passenger psychology thing), then all commands go to a base station which controls the track.
Aww, it's a conspiracy again!
But would you really think that anyone could hold something like that back? Any government and their military would have a really big interest in free energy anywhere. Energy companies would just be shoved aside.
However it is not a technology. It's a bunch of wild theories that don't look like they'd play well with the most basic laws of nature (creating energy out of nothing).
The energy in the now real particle flying away is taken from the black hole's mass. That's the process that causes black holes to lose mass and eventually disappear.
Solar and lunar eclipses are different things.
You seem to be mixing up hetero and homo here.
AMD. The Am2910 being the microsequencer, Am2901 4 bit ALU and Am2904 word logic module. Haven't seen one as a real object, but simulated this is the machine all CS students at TU Munich have to do some microprogramming on.
Should be possible with Athlon, too. You can leave CPU sockets without CPU in Intel SMP configurations and the remaining CPUs are used properly. However, you have to put in termination dummies in order to not degrade the CPU bus signal quality. Since AMD uses the Alpha way for SMP, it won't have a CPU bus but separate ports on the chipset for every CPU, so you may not need terminators for those.
Unless, of course, they patent it and sue you for using the mechanism without signing your soul over to them...
I'm being offtopic here (so what), but your understanding of RSA (or public key encryption in general) to be flawed. A short RSA key would be 512 bits, which is considered insecure. A medium length somewhere around 768 bits, with keys considered secure at around at least 1024 bits.
Asymmetric keys tend to have that length (with elliptic curve based algorithms having somewhat shorter keys). A medium length of 56 to 64 bits would apply to symmetric encryption. 40 bits is actually rather short.
Data area is executable. Think just-in-time compilers and trampoline code (the latter is often put on stack, at least gcc does for its extension of local functions). Even if you wanted to make them non-exec (would for a week at most, then exploits will have adapted), there are hardware limitations in that. Stupid x86 MMU (and some other architectures) can not distinguish between readable and executable, it is either nothing or both. The non-exec stack on x86 can only be done through segment hackery, and I don't think you can extend it to non-exec data.
Just think: the stack can always be written and includes return pointers and function args. If neither data nor stack were executable, you can still smash a return to execve() and a parameter "/bin/sh" (or any other function or args) on the stack. Once you have a root shell, who cares about some toys like non-exec stack and data?
I know that gas (GNU assembler) stores constant data together with the program code. Guess that makes it difficult to separate them when they are loaded into memory ...
Of course it does (and therefore gcc, too). If they were stored in the data section they wouldn't be constant. Program code & constant data (const vars, literal strings) go into text, initalized data into data and unitialized data into bss. That's where they belong.
The GPL grants rights on a copyrighted work which you do not have by default. It ceases to grant them when you violate the GPL. That it is written down explicitly instead of just being implied should not make much of a change, not even in court.
What could be seen as the 3D data navigator in Jurassic Park was, in fact, that SGI program you're referring to. IMDb's trivia section on that movie mentions it.
Technically it was an IRIX system, but I digress.
Which is (one development branch of) Unix. Every OS looking like out there descends from the original Unix and branched off at one time in Unix history (including the BSDs) with the notable exception of Linux, which was programmed from scratch and is therefore often (and correctly) called a Unix-like OS.
Hardly any. Who can afford paying a few hundred $ per month for a leased line? Flatrates slowly start to emerge in Germany, at prices (for the complete package) from $30 to $75, per month, analog or ISDN. And these have explicitly non-leased-line contracts, i.e. connection is cut after a certain time and they will get down on you when they notice you are online 24 hours a day.
In fact many/most(?) modern camcorders can see infrared, as you can easily find out by pointing a remote control at one, pressing a button and see the IR LED flash in the camcorder's picture. This has something to do with improving color, I think.
In fact, some of the digital camcorders come with a night shot feature: they have IR LEDs for illumination and record b/w IR video. This lets you film with absolutely zero visible light. Some models with that feature (absolutely incomplete, this list is from an article about digital camcorders supporting still picture saving and just happens to mention this) are Sharp VL-PD6S and the Sony models PC5E, PC100E and TRV320E.
Oh cool. With an MMU you can do such neat things like demand loading executables, which is what Linux does since version 0.0x and what any other Unix with any respect for itself does. Only the code which is executed gets loaded, without anyone except the kernel having to care about that.
The airlines I have experience with ban all electronic devices during take off and landing and allow laptops w/o CD-ROM and other apparantly harmless devices during flight.
Radio signal emitting devices are of course banned throughout the whole flight but CD-ROMs, audio CD players and probably MiniDisc (not sure on that one) are included in that ban.
Maybe they hardened the board electronics against interferences nowadays. Maybe they sacrifice security for market share ("If you don't allow me to use my CD-ROM I'll take another airline in the future, I tell ya!").
And flight personnel didn't complain? Last time I checked airlines did allow the use of laptops during flight, but CD players (and in extension DVD players) were still strictly forbidden due to interference possibilities with airplane electronics.
Or did you just copy the whole DVD to harddisk and played from there?
Technically possible, yes. But since AGP is a port and not a bus, you'd have to find a chipset that has more than one AGP port. I've never heard of any such beast existing. Easiest way would be to have those built under contract by VIA, Intel or someone... if you have a few millions to spare.
Technically, that is what they are doing (the "friendly" approach) and that is what an "Abmahnung" is. It is a request to stop violating a trademark without actually taking it to court (but with the implicit or explicit threat of doing so if the other doesn't back off).
Now the thing is that they charge lawyer's costs with that (which are presumably a lot lower than the costs when you lose in court). This has in the last years led to widespread abuse of this system (a certain Munich based lawyer became very notorious for that) by trademarking incredibly common terms (Explorer, Webspace, ...) then sending out serial requests with lawyer's charges of around $500-$1000.
They claim that this is their cost, in fact it's nothing more than letters created with the serial letter function of some word processor. They bet on the fact that none of their victims has the money to spare to risk going to court and settle this for real (they still might lose) or that they have enough money that they don't bother. Microsoft is paying royalties to some small company for using the trademark "Explorer" in Germany.
Yes, you've put the pig inside the space shuttle. That certainly doesn't prove much.
Yeah right. My .de address also doesn't stop spammers from sending me offers that are (as they explicitly state in their spam) valid in US only.
For spammers, a valid address is a good address. They don't care about the 99.99999% of recipients that are absolutely uninterested and annoyed, whether they live in the US, Japan or on the moon is irrelevant to them.