Example #1
0
        public void set(int pid, ReqType type, ReqType proc_req_type, ulong paddr)
        {
            //state
            this.pid           = pid;
            this.type          = type;
            this.proc_req_type = proc_req_type;
            this.row_hit       = true;

            this.actual_addr = paddr;
            //address
            if (Config.mctrl.page_randomize)
            {
                this.paddr = prand.get_paddr(paddr);
            }
            else if (Config.mctrl.page_sequence)
            {
                this.paddr = pseq.get_paddr(paddr);
            }
            else
            {
                this.paddr = paddr;
            }
            this.block_addr  = this.paddr >> Config.proc.block_size_bits;
            this.addr        = MemMap.translate(this.paddr);
            this.is_prefetch = false;

            //misc
            this.reset();
        }
Example #2
0
        public void set(int pid, ReqType type, ulong paddr)
        {
            //state
            this.pid  = pid;
            this.type = type;

            //address
            if (Config.mctrl.page_randomize)
            {
                this.paddr = prand.get_paddr(paddr);
            }
            else if (Config.mctrl.page_sequence)
            {
                this.paddr = pseq.get_paddr(paddr);
            }
//		else if (Config.mctrl.remapping) {
//			if (mapping_table.contains(paddr >> PAGE_SIZE)) {
//				this.paddr = mapping_table[paddr >> PAGE_SIZE];
//			}
//		}
            else
            {
                this.paddr = paddr;
            }
            this.block_addr = this.paddr >> Config.proc.block_size_bits;
            this.addr       = MemMap.translate(this.paddr, pid);

            //misc
            this.reset();
        }