Find Jobs
Hire Freelancers

C Programming —Cache Memory

$10-30 USD

Completed
Posted about 8 years ago

$10-30 USD

Paid on delivery
Objective: To simulate reading and writing to a custom-sized direct-mapped cache, involving a custom-sized main memory. Inputs: The total size of accessible main memory (in words) The total size of the cache (in words) The block size (words/block) A signal to read (0) or write (1) to the cache The main memory address to read from/write to The contents of the address for writing to the cache Outputs: The corresponding cache tag, block, and word for a main memory address The contents of the address resulting from reading/writing to the cache A message indicating either a hit or a miss to the cache Specification: The program simulates reading from and writing to a cache based on choosing from a menu of choices, where each choice calls the appropriate procedure, where the choices are: 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit program Notes:  Use a structure (struct) to represent a cache line consisting of a tag (integer) and a block (integer pointer). Define the cache to be a pointer to the struct.  Upon entering the parameters, the main memory and cache are to be dynamically allocated based on their respective total sizes. Each word i of main memory is initialized with the value M–i, where M is the size of main memory in words. Reading/writing from/to a new block in the cache results in dynamically allocating the block based on the block size. Output: Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 1 Enter main memory size (words): 65536 Enter cache size (words): 1024 Enter block size (words/block): 16 Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 2 Select read (0) or write (1): 1 Enter main memory address to write to: 65535 Enter value to write: 14 Write miss! ----------------------------------------------------- | Tag: 63 | Block: 63 | Word: 15 (14) | ----------------------------------------------------- Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 2 Select read (0) or write (1): 0 Enter main memory address to read from: 65535 Read hit! ----------------------------------------------------- | Tag: 63 | Block: 63 | Word: 15 (14) | ----------------------------------------------------- Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 2 Select read (0) or write (1): 1 Enter main memory address to write to: 65534 Enter value to write: 512 Write hit! ----------------------------------------------------- | Tag: 63 | Block: 63 | Word: 14 (512) | ----------------------------------------------------- Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 2 Select read (0) or write (1): 0 Enter main memory address to read from: 1023 Read miss! ----------------------------------------------------- | Tag: 0 | Block: 63 | Word: 15 (64513) | ----------------------------------------------------- Cache memory allocation and mapping: ------------------------------------ 1) Enter parameters 2) Access cache for reading/writing and transfer data 3) Quit Enter selection: 3
Project ID: 9889580

About the project

3 proposals
Remote project
Active 8 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
$30 USD in 1 day
5.0 (146 reviews)
6.7
6.7
3 freelancers are bidding on average $38 USD for this job
User Avatar
Hello! I would love to work on your project. please do contact me to discuss further. Thanks!
$35 USD in 2 days
5.0 (54 reviews)
5.6
5.6
User Avatar
Hello. How are u. I saw your description and attached files. I understood it and can do it well. I have done several project like this. I'm an expert in Data Structures and Algorithms. And I know Java ,C/C++,C# and Python well. I'm interested this project. I want to discuss with you about this project. If it's possible,please contact me and explain more detail. I wait your good reply. Bye.
$50 USD in 2 days
4.7 (22 reviews)
4.4
4.4

About the client

Flag of UNITED STATES
northridge, United States
5.0
11
Payment method verified
Member since Nov 10, 2015

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.