Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Brett Newsgroups: comp.arch Subject: Heads and Tails flaws Date: Fri, 6 Sep 2024 23:49:27 -0000 (UTC) Organization: A noiseless patient Spider Lines: 16 Message-ID: References: <2024Sep6.073801@mips.complang.tuwien.ac.at> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Sat, 07 Sep 2024 01:49:28 +0200 (CEST) Injection-Info: dont-email.me; posting-host="69b04259962226cce1ab2521b6ec551c"; logging-data="1061243"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+MQOn64/T0uPZZ//OV0qYa" User-Agent: NewsTap/5.5 (iPad) Cancel-Lock: sha1:xMrCNVd24GIfjmmIRnuabSjcHPs= sha1:lOxhIanyA+2FNhA5qu1STE1XmSs= Bytes: 1557 Brett wrote: > Anton Ertl wrote: Here is a PDF on heads and tails: http://scale.eecs.berkeley.edu/papers/hat-cases2001.pdf They went for maximum density, which is stupid. The timing critical part is the source registers, and in a wide implementation the dest registers are also critical. Opcodes and data/offsets only matter far later in the pipeline. I would do three registers and enough opcode bits to get an idea of opcode type and size. For one and two register instructions you pack in more opcode.