Jump to content

How does a CPU work?

From an engineering perspective...how does it work... 

 

I.e. what exactly is the multiplier, or why is the base clock always 100mhz.....

Why did cpu size never increase dramatically? --If one chip can output so much, then a chip thats double the size with the same architecture should be able to output significantly more power... 

PSU Tier List | CoC

Gaming Build | FreeNAS Server

Spoiler

i5-4690k || Seidon 240m || GTX780 ACX || MSI Z97s SLI Plus || 8GB 2400mhz || 250GB 840 Evo || 1TB WD Blue || H440 (Black/Blue) || Windows 10 Pro || Dell P2414H & BenQ XL2411Z || Ducky Shine Mini || Logitech G502 Proteus Core

Spoiler

FreeNAS 9.3 - Stable || Xeon E3 1230v2 || Supermicro X9SCM-F || 32GB Crucial ECC DDR3 || 3x4TB WD Red (JBOD) || SYBA SI-PEX40064 sata controller || Corsair CX500m || NZXT Source 210.

Link to comment
Share on other sites

Link to post
Share on other sites

-deleted-

Beware of him that is slow to anger; for when it is long coming, it is the stronger when it comes, and the longer kept. Abused patience turns to fury.
 
Link to comment
Share on other sites

Link to post
Share on other sites

That's a bit lame to post a wikipedia link, he needs a clear explanation from a fellow forum member answered to his specific questions.

 

Same as someone asking a definition of a simple word and you just throw a whole dictionary at them.

Link to comment
Share on other sites

Link to post
Share on other sites

You got to understand logic gates in order to know how it works, but basically it has inputs and outputs, where according to the instruction, it makes use of different gates to process those inputs into a result.

Why aren't they any bigger? The more complicated and faster you want information to move on electricity, the shorter it goes. CPU dies are not that big because data would corrupt on such long distance. Other factor besides power consumption and heat (that will be major on a larger die), is latency: different streams get moved very fast on data buses, a ms difference can screw up the result.

Link to comment
Share on other sites

Link to post
Share on other sites

That's a bit lame to post a wikipedia link, he needs a clear explanation from a fellow forum member answered to his specific questions.

 

Same as someone asking a definition of a simple word and you just throw a whole dictionary at them.

yes please point at me because i don't know the answer and i tried to help

Beware of him that is slow to anger; for when it is long coming, it is the stronger when it comes, and the longer kept. Abused patience turns to fury.
 
Link to comment
Share on other sites

Link to post
Share on other sites

Magic. ;)

Main rig on profile

VAULT - File Server

Spoiler

Intel Core i5 11400 w/ Shadow Rock LP, 2x16GB SP GAMING 3200MHz CL16, ASUS PRIME Z590-A, 2x LSI 9211-8i, Fractal Define 7, 256GB Team MP33, 3x 6TB WD Red Pro (general storage), 3x 1TB Seagate Barracuda (dumping ground), 3x 8TB WD White-Label (Plex) (all 3 arrays in their respective Windows Parity storage spaces), Corsair RM750x, Windows 11 Education

Sleeper HP Pavilion A6137C

Spoiler

Intel Core i7 6700K @ 4.4GHz, 4x8GB G.SKILL Ares 1800MHz CL10, ASUS Z170M-E D3, 128GB Team MP33, 1TB Seagate Barracuda, 320GB Samsung Spinpoint (for video capture), MSI GTX 970 100ME, EVGA 650G1, Windows 10 Pro

Mac Mini (Late 2020)

Spoiler

Apple M1, 8GB RAM, 256GB, macOS Sonoma

Consoles: Softmodded 1.4 Xbox w/ 500GB HDD, Xbox 360 Elite 120GB Falcon, XB1X w/2TB MX500, Xbox Series X, PS1 1001, PS2 Slim 70000 w/ FreeMcBoot, PS4 Pro 7015B 1TB (retired), PS5 Digital, Nintendo Switch OLED, Nintendo Wii RVL-001 (black)

Link to comment
Share on other sites

Link to post
Share on other sites

From an engineering perspective...how does it work... 

 

I.e. what exactly is the multiplier, or why is the base clock always 100mhz.....

Why did cpu size never increase dramatically? --If one chip can output so much, then a chip thats double the size with the same architecture should be able to output significantly more power... 

 

You got to understand logic gates in order to know how it works, but basically it has inputs and outputs, where according to the instruction, it makes use of different gates to process those inputs into a result.

Why aren't they any bigger? The more complicated and faster you want information to move on electricity, the shorter it goes. CPU dies are not that big because data would corrupt on such long distance. Other factor besides power consumption and heat (that will be major on a larger die), is latency: different streams get moved very fast on data buses, a ms difference can screw up the result.

you beat me to it, my wording was a little different, but this explains it nicely.

 

I'd just like to add about the Base clock being 100 mhz, this is only the case with newer chips, older socket 775 chips had different base clock speeds.

Spoiler

CPU: R5 1600 @ 4.2 GHz; GPU: Asus STRIX & Gigabyte g1 GTX 1070 SLI; RAM: 16 GB Corsair vengeance 3200 MHz ; Mobo: Asrock Taichi x470; SSD: 512 gb Samsung 950 Pro Storage: 5x Seagate 2TB drives; 1x 2TB WD PurplePSU: 700 Watt Huntkey; Peripherals: Acer S277HK 4K Monitor; Logitech G502 gaming mouse; Corsair K95 Mechanical keyboard; 5.1 Logitech x530 sound system

 01000010 01101001 01101110 01100001 01110010 01111001 00100000 01100100 01101111 01100101 01110011 01101110 00100111 01110100 00100000 01101101 01100001 01101011 01100101 00100000 01111001 01101111 01110101 00100000 01110000 01110010 01101111 00101110

 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

From an engineering perspective...how does it work... 

 

I.e. what exactly is the multiplier, or why is the base clock always 100mhz.....

Why did cpu size never increase dramatically? --If one chip can output so much, then a chip thats double the size with the same architecture should be able to output significantly more power... 

1) The multiplier is the... well the multiplier it times the base frequency by to achieve the clock speed. It wasn't always 100MHz but it is now as the PCIe clock and other things are also bound to the multi. We used to have FSB etc also.

 

2) Because as die size goes up so does power consumption and heat output, you'll also get wasted space- for example a 4790K has a better performance:die size ratio than a 4930K. This is why we double transistor count using smaller manufacturing processes etc.

 

So CPUs use logic gates to achieve different calculations, there are also different kinds of things such as integer operations and floating point operations and a bit more to it than this. You can also use instruction sets to add functionality to the base processor to to speed up certain tasks using that instruction set, for example there are things like vt-x that can be used to allow a CPU to virtualize the hardware platform instead of using binary translation. 

 

 

yes please point at me because i don't know the answer and i tried to help

Not to be rude but maybe it's best to follow the thread learn from others input rather than add your own if you don't know :)

Link to comment
Share on other sites

Link to post
Share on other sites

1) The multiplier is the... well the multiplier it times the base frequency by to achieve the clock speed. It wasn't always 100MHz but it is now as the PCIe clock and other things are also bound to the multi. We used to have FSB etc also.

 

2) Because as die size goes up so does power consumption and heat output, you'll also get wasted space- for example a 4790K has a better performance:die size ratio than a 4930K. This is why we double transistor count using smaller manufacturing processes etc.

 

So CPUs use logic gates to achieve different calculations, there are also different kinds of things such as integer operations and floating point operations and a bit more to it than this. You can also use instruction sets to add functionality to the base processor to to speed up certain tasks using that instruction set, for example there are things like vt-x that can be used to allow a CPU to virtualize the hardware platform instead of using binary translation. 

I understand what the multiplier does, but..like, why is it there. Why isn't the base clock just 3.4ghz rather than 100mhz with a 34 multiplier. 

PSU Tier List | CoC

Gaming Build | FreeNAS Server

Spoiler

i5-4690k || Seidon 240m || GTX780 ACX || MSI Z97s SLI Plus || 8GB 2400mhz || 250GB 840 Evo || 1TB WD Blue || H440 (Black/Blue) || Windows 10 Pro || Dell P2414H & BenQ XL2411Z || Ducky Shine Mini || Logitech G502 Proteus Core

Spoiler

FreeNAS 9.3 - Stable || Xeon E3 1230v2 || Supermicro X9SCM-F || 32GB Crucial ECC DDR3 || 3x4TB WD Red (JBOD) || SYBA SI-PEX40064 sata controller || Corsair CX500m || NZXT Source 210.

Link to comment
Share on other sites

Link to post
Share on other sites

I understand what the multiplier does, but..like, why is it there. Why isn't the base clock just 3.4ghz rather than 100mhz with a 34 multiplier. 

Base clock also controls PCI clock and some other chips- these don't place nicely when you clock them too high, having too many different clock generators adds complexity and inefficiency to the CPU platform itself.

 

We used to have FSB, QPI and other stuff to worry about but now everything is on the CPU die and not seperate chips such as the northbridge we have more unified clock generators.

Link to comment
Share on other sites

Link to post
Share on other sites

Well.
A CPU is basically doing basic calculations. For it to do calculations it obviously needs some data. So it is able to get some value (normally from the main memory) issueing a

LOAD

command.

Obviously it also needs to store it. So it is also able to issue a

STORE

command.

On how they do the calculations, I do believe this video will help more:



Remember what a CPU does in a single cycle doesn't seems like much, but it is a part of the big puzzle.
Link to comment
Share on other sites

Link to post
Share on other sites

I had a nice course at my university where we had to implement a small computer on an Field Programmable Gate Array (FPGA), we got the CPU handed to us, but we had to implement all sorts of things such as IO, UART, Displays and much more.

 

Basically the CPU is a whole bunch of logical gates, but there is of course a lot more to it. CPU's have different microarchitectures, which usually are codenamed internally, for instance Intel uses locations for names, such as Haswell, Nehalem, Ivy Bridge etc. These define how the CPU's are structured internally. Then there are instruction set architectures (ISA), where modern desktop CPU's use x86-64, these define how you communicate with the CPU. Popular ones are PowerPC, MIPS, x86, SPARC, Itanium and lately ARM has gained popularity in mobile devices.

 

Such instruction could look like:

500px-Mips32_addi.svg.png

 

Which tells to add stuff stored in Addr1 with the Immediate value and store it in Addr2. The CPU's internally have control units to route data, on a system bus, the correct places based on the instructions given to the CPU. Then other components such which are ALU's which basically multipy, divide and add bits.

 

If you want to know more about Digital Design, I can recommend reading "Digital Design" by Frank Vahid. It is going to take a looong time to describe how a CPU works in detail on a forum and you won't get all the details about it.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×