parent
ecbb0ccfb3
commit
92a376e890
@ -0,0 +1,160 @@
|
||||
# Lecture 1
|
||||
|
||||
## Honours Programme
|
||||
|
||||
- [Canvas page](https://canvas.vu.nl/courses/73125)
|
||||
- Early engagement and ecellence in science
|
||||
- Test your brain against a problem that **no one else solved before**
|
||||
|
||||
## Conceptual Map of the Course
|
||||
|
||||
First two lectures, we are at **1**.
|
||||
|
||||
1. Digita Logic
|
||||
2. Digital Data
|
||||
|
||||
## Real world example
|
||||
|
||||
There is no "perfect" computer system. Building a computer system is a game of **trade-offs**. No approach is optimal generally.
|
||||
|
||||
_We get the luxury of a general purpose processor - CPU: BUT 35x less efficient than specialized processors_
|
||||
|
||||
## Big Science through An Example
|
||||
|
||||
Millions of sensors => good understanding of the field
|
||||
|
||||
## Key Technolog: Ecosystem of Federated / Geo-Distributed Datacenters
|
||||
|
||||
- SKA1 LOW -> COMPUTER SYSTEM
|
||||
- COMPUTER SYSTEM -> 68x image quality
|
||||
|
||||
The computer system acts like the brain of the whole process.
|
||||
|
||||
- **Scientific Computer System**: process final data
|
||||
- No processor can do 10b computations / second as of right now.
|
||||
|
||||
## How to build a LARGE computer system?
|
||||
|
||||
```
|
||||
Novel applications often require new computer systems.
|
||||
```
|
||||
|
||||
_To outcompete in a business sense means to **out-compute**_.
|
||||
|
||||
> **Answer**:
|
||||
> Given an application
|
||||
>
|
||||
> 1. Consider candidate computing technologies
|
||||
> 2. Pick the most promising technology and design around it a computer system
|
||||
> 3. Analyze the desing could work.
|
||||
> 4. Prototype
|
||||
|
||||
> **System Definition**: A system is _a set of elements or parts_ coherently organized and interconnected in a pattern or structure that produces a characteristic set of behaviours, often classified as its _function_ or _purpose_.
|
||||
|
||||
1. More than the sum of its parts, non-linear interactions.
|
||||
2. Function may be least obvious part of the system, emergence.
|
||||
3. Growth, evolution, and other complex dynamics (may) appear.
|
||||
|
||||
## Overview of candidates
|
||||
|
||||
1. Manual Labor
|
||||
2. Electro-Mechanical Device
|
||||
3. From Scratch, Transistor-Based
|
||||
4. ???
|
||||
|
||||
### Option 2 - An Electro-Mechanical Device
|
||||
|
||||
_Only six electronic digital computers would be required to satisfy the computing needs of the United States_. - **LMAO**
|
||||
|
||||
- ASCC
|
||||
|
||||
- 1937-1944, Howard Aiken, IBM build it
|
||||
- Goal: 100x faster vs hand
|
||||
- Reality: only 3-5x faster (due to component failures, **introduces the need for reliability**)
|
||||
|
||||
- ENIAC
|
||||
|
||||
- 1943-1947, John Mauchly and John Presper Eckert
|
||||
- First all-electronic computer
|
||||
- Fully automated operation
|
||||
- Performance: computation speed-up 20 hours -> 20 seconds
|
||||
- Data: `1000 bits`
|
||||
- Unreliable
|
||||
- Power-hungry
|
||||
- Difficult to program
|
||||
|
||||
### Option 3: Build on Digital Logic
|
||||
|
||||
# Basics of Digital Logic
|
||||
|
||||
**Digital logic**: Basics of Digital Logic -> Basic Processing Unit -> Advanced Computers
|
||||
|
||||
## Moore's Law (# of transistors / chip)
|
||||
|
||||
> Density of silicon chip (**2x every 1.5 years**)
|
||||
|
||||
> Rock's Law (cost to produce chips)
|
||||
> <br>Cost of equipment to produce chips 2x every 4 years
|
||||
|
||||
### Is Moore's Law Dead?
|
||||
|
||||
$\log_2$ growth, curve that tends to become constant over time
|
||||
|
||||
## Koomey's Law
|
||||
|
||||
> Energy efficiency increases **2x** every 1.5 years
|
||||
|
||||
Every additional transistor consumes additional energy.
|
||||
|
||||
## For now, make transitor-based computer systems
|
||||
|
||||
# Making a computer system
|
||||
|
||||
Further design an architecture:
|
||||
|
||||
1. Abstract wys to read data streams, so to represent data
|
||||
2. Abstract (mathematical) principles of data processing
|
||||
3. Real world ways to make the abstraction work in practice
|
||||
|
||||
# Mushroom question
|
||||
|
||||
Repeat the question: "ghici ciuperca ce-i"
|
||||
|
||||
# Boolean algebra
|
||||
|
||||
$$\Large x \cdot x = x^2 = x$$
|
||||
$$\Large x + x = x$$
|
||||
|
||||
$$\Large 0 \cdot x = 0$$
|
||||
$$\Large 0 + x = x$$
|
||||
|
||||
$$\Large 1 \cdot x = x$$
|
||||
$$\Large 1 + x = 1$$
|
||||
|
||||
## More $\equiv$ to logic
|
||||
|
||||
If $x$ is a class of objects, then
|
||||
$$\Large 1-x \text{ is the complement of that class}$$
|
||||
|
||||
Functions that can be represented in Boolean algebra
|
||||
<br>Any number of parameters:
|
||||
|
||||
$$\Large f(x)=f(1)\cdot x + f(0) \cdot \overline{x}$$
|
||||
$$\text{where } x = \text{ a condition}$$
|
||||
$$\text{where } \overline{x} = \text{ complement of } x \text{ aka } \neg x$$
|
||||
|
||||
This function is known as a **minterm**.
|
||||
|
||||
Another example of a **minterm**:
|
||||
|
||||
$$\large f(x, y) = f(1,1)\cdot x \cdot y + f(1, 0) \cdot x \cdot \overline{y} + f(0,1) \cdot \overline{x} \cdot y + f(0,0) \cdot \overline{x} \cdot \overline{y}$$
|
||||
|
||||
Example of sum of products for **INVERT**:
|
||||
|
||||
$$\Large f(x) = \overline{x}$$
|
||||
|
||||
We can also make use of **polynomials**.
|
||||
|
||||
### Conclusion
|
||||
|
||||
> We have found an algebra that works on bits, for both arithmetic & logic.
|
Loading…
Reference in new issue