F-CPU Project
Year 2000 status quo
Program
Forewords, presentation and remarks
Part 0 : The "Open Hardware" trend
It's about FPGA, OpenCollector, IP, Hobbyists, SoC....
Part 1 : Organisation, Philosophy & History
-
What is the F-CPU ?
-
Goal/Purpose
-
Origins of the project
-
Web organisation
-
Evolution/history of the organisation (who does what)
-
Enabling technologies
-
Bus
iness Model
-
Licences Issues
-
Patent Issues
-
Organisation Issues
-
Communication and collaborations
-
Projects
-
Ongoing discussions and extensions
-
Target platform
-
Calendar 2K
-
Association & Verein
-
Freedom : philosophie or religion ?
Questions from the audience
CD ?
Pause (3 mins)
Part 2 : F-CPU & FC0 scratch course
-
Background / Introduction to CPU architectures
-
The RISC backgrounds : the "canonical" MIPS
-
The lessons from the past
-
New applications, technologies, tools and requirements
-
The modifications and extensions of a canonical architecture
-
The F-CPU compatibility layers
-
Main characteristics of the F-CPU
-
The F-CPU ISA
-
Forward and backward compatibility
-
Main Characteristics of the FC0
-
The LEGO bricks
-
The design rules
Questions from the audience
CD ?
Au revoir & CU@1... !!!
Forewords
-
langage : english
-
Presentation of the team members
-
Presentation of the subjects and the program
-
About the workshop
Part 0 : The "Open Hardware" trend
-
Overview
-
families and licences
-
FPGA
-
existing Projects
-
interaction between the industry, researchers and hobbyists
Part 1 : Organisation, Philosophy & History
What is the F-CPU ?
There is no exact definition. There are several points of view, depending
on everyone's expectations and culture.
The F-CPU as a microprocessor is the only fully-customizable
SIMD, superpipelined,
64-bit microprocessor. The sources are distributed under the terms of the
GNU Public Licence, supplemented with a strong distribution charter and
a quality charter.
It is also a group of people working together around the globe who are
trying to design this microprocessor. They communicate through mailing
lists and emails on the Internet, or they try to share their knowledge
during meetings. Their skills range from lurkers to professional electronicians,
with different degrees of involvement.
Goal/Purpose
The goal of this project is to design a CPU that could replace and surpass
existing CPUs in consumer or niche markets. It is not realistic to want
the fastest CPU ever : we can't win against the big companies. But
instead, the goal is to design the coolest, sexiest CPU of the 21th
century, while still attempting to get the most perfomance. As the original
design goal was to make a "Merced-killer", a more interesting competitor
wou
ld be the Alpha CPU class.
The team has adopted a "constitution" in order to solve the design conflicts
:
To develop and make freely available an
architecture, and all other intellectual property necessary
to fabricate one or more implementations of that architecture,
with the following priorities, in decreasing order of importance:
1. Versatility and usefulness in as wide a range of
applications as possible
2. Performance, emphasizing user-level parallelism and
derived through intelligent architecture rather
than advanced silicon process
3. Architecture lifespan and forward compatibility
&n
bsp; 4. Cost, including monetary and thermal considerations
We must limit ourselves to this goal, and not forget the initial purpose
of this project. The goal is to make a CPU core, not a whole computer.
It's already difficult enough and we don't have time to study the clusters,
the PCB or the support software, these problem should be left to other
specialized groups for the moment.
Origins of the project
Linux kernel contributors : Andrew D. Balsa, Rafael Reilova and Richard
Gooch. They created the Freedom project in august 1998, as well as a mailing
list, a first website, they studied a first design and triggered the F-CPU
shockwave before they disapeared.
The original inspiration was a dream or a utopy based on real facts
and their need for a "clean" platform that would make coding much easier
than on today's machines.
Web organisation
-
web sites
-
mailing lists
-
f-cpu@egroups.com
-
f-cpu_france@egroups.com
-
fcpu-ger@egroups.com
-
Utopia Computing webring
-
IRC
Evolution/history of the organisation (who does what)
-
No leader : freedom of research + decision by consensus
-
People should become more responsible, more involved and more conscious
about the value of their work : they have to make sure that their part
works correctly, is correctly documented and well understood.
Enabling technologies and conditions
-
The GNU/Linux shockwave
-
Free/GNU/"Open" EDA tools
li>
-
Trend towards "IP reuse" in the companies
-
Intel's monopoly with a shit
Business Model
Who will make the F-CPU ?
The F-CPU will first exist in software and in reprogrammable logic before
it can beturned into a real full-custom chip.
Making a chip is extremely expensive, a simple ASIC costs several million
dollars. A subscription has been proposed but
-
who will collect the money ?
-
who will invest the millions ?
-
what about the taxes ?
-
...
We should concentrate on the design, and not loose time on things that
we don't understand. The goal of the project is not to create a new company
but a new design. We should let the industry play its role : manufacture
and make money. This will provide a fair ground for innovation and new
developments.
The easiest way to "make" the F-CPU is with sponsors : we provide them
with a free design and they let us develop the chip using their tech
nology.
The first company that does it will have a lot of advance because the masks
and the adapted files will be ready before the others. It spares us a lot
of time, not filling papers to create a fundation or something similar.
Examples of cooperations with the "free HW world" : (see http://www.opencollector.org/news/)
-
OpenCores : 1 TSMC wafer, 0.25u, 5LM
-
Potential help from Cadence and Mentor Graphics
Licences Issues
see http://www.opencollector.org/hardlicense/
Patent Issues
-
The inefficiency of the patent system : blocking patents, silly patents,
workarounds, expensive...
-
Prior art and publication : who can help us to publish papers at the ACM
and IEEE magazines ? (or something else)
-
The lizzard's strategy
-
Today we're safe because we don't build anything, we only describe the
HW.
Organisation Issues
-
Leaving leaders : "dangling" websites and mailing lists (ie : f-cpu.tux.org,
f-cpu@egroups.com ...)
-
Lack of time
-
Parallel discussions on IRC, mailing lists, meetings etc... that are not
resyncronised with the rest of the group
-
The old mailing list that is not controlled
Communication and collaborations
-
CCC : sponsors f-cpu.xxx name and web hosting
-
Press : several articles in different magazines around the world
-
Communication with other groups (or members thereof) : OpenCores, OpenCollecor.org,
LEON...
-
Group members in the Industry, Research or other branches, where they can
lobby in favor of free designs
Projects
-
FC0
VHDL design
-
Manual
-
GCC port
-
GNL/XML (alternative code generators)
-
Website update
Ongoing discussions and extensions
-
F-bus
-
G-chip
-
multi-FC0
-
alternative programming methods
Target platform
Anywhere we need a good CPU...
From embedded appliances to multi-CPU servers, running whatever OS
that will be ported to it.
Calendar 2K
-
dec. 1999 : 16C3
-
feb. 2000 : Linux Expo / Paris -> disccussions about the Metafort
-
mar. 2000 : DATE 2000, contacts with the industry
-
apr. 2000 : brand deposited in France, logo contest
-
sep. 2000 : EDA tool testings, master thesis
-
oct. 2000 : first VHDL package
-
nov. 2000 : multiplier, seul.org + Mentor Graphics
-
dec. 2000 : Cadence + 17C3
Association & Verein
Nothing yet
... It is not the biggest priority now...
Freedom : philosophie or religion ?
Should the "free hardware" be split into "churches", like in the Free Software
world ?
Should the "free hardware" be separated from the "open hardware" ?
Is there a risk of excess à la RMS ?
Conclusion :
FREEDOM means
"design and let design"
Part 2 : F-CPU & FC0 scratch course
Yann GUIDON, 27/28/29 décembre 2000, Berlin/HAKP/17C3