From 52b588775e8f16a4a29c71762497ae2eef946e01 Mon Sep 17 00:00:00 2001 From: Matthijs Kooijman Date: Fri, 25 Jul 2008 17:52:20 +0200 Subject: [PATCH] Add some stuff about pipelining (unfinished). --- Report/Main/Problems/Challenges.tex | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Report/Main/Problems/Challenges.tex b/Report/Main/Problems/Challenges.tex index 13a8dd8..531e580 100644 --- a/Report/Main/Problems/Challenges.tex +++ b/Report/Main/Problems/Challenges.tex @@ -190,5 +190,19 @@ Initially mostly helping out with hints on LLVM coding, but later also with thinking about the scheduler and hardware design. I will not go into much detail about the new hardware and its scheduler here, -but I will highlight the most important challenges and tradeoffs. I'll also +but I will highlight the most important challenges and tradeoffs. + +In general, the most important tradeoff seems to be between flexibility and +everything else (code size, performance, complexity). This flexibility is +expressed in which instructions are possible, which connections are present, how +big register files are, etc. + +An important reason to be flexible is for programmability. If the hardware is +regular, making a compiler that produces optimal code gets a lot easier. + +Code compression. + +I'll also spend a few words on the observed merits of hardware/software codesign. + + -- 2.30.2