[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [oc] TLB Design
u plz suggest the method of how to implement CAM specifically in
vhdl/verilog.
----- Original Message -----
From: Ali Mashtizadeh <ali@a... >
To: cores@o...
Date: Tue, 26 Feb 2002 18:00:48 -0800
Subject: [oc] TLB Design
>
>
> Well I understand that I am supposed to use a state machine to do
> the
> comparisons. It's like this
>
> virtual Address->[Content Addressable Memory(State
> machine)]->[RAM]->Physical Address
>
> The CAM(Content Addressable Memory) is my problem. You need to
use
> a
> state machine to do the comparisons but that means if you have a 64
> entry tlb then it will take 64 clock cycles. Unless you make the
> state
> machine's clock to be 64 times faster. I understand that most cpu's
> break up the process into several smaller blocks of 4 or 8 entries
> and a
> seperate comparator for each block but still that means I have to
> use up
> my precious DLL's. As for a TLB compatible with a 386 your gonna
> have
> fun with that. You need to make a search state machine to find
> entries
> out of the page tables when it is not in the TLB cache.
>
> You can simplify your TLB by using a direct mapped cache. But thats
> not
> too nice. (IE: you hash(in some way or form) the virtual address
> and use
> that as an index pointer. It can be something like the least
> significant
> bits of the virtual address(ofcourse after the first bits that are
> less
> than your page size.) I am concidering that method since its
> simpler. I
> personally will use several parrallel direct mapped caches so that
> to
> addresses with the same hash can exists on my tlb at the same time.
>
> Can someone tell me what they have done for their TLBs?
>
> Ali
>
--
To unsubscribe from cores mailing list please visit http://www.opencores.org/mailinglists.shtml