1007ICT Assignment Trimester 1, 2024
Due Date: 11:59pm Friday Week 9 (10 May 2024)
1. Individual Assessment
This is an individual assignment. All work submitted must be your own work. Be careful not to use the work of others as your own nor have others use your work as their own.
2. Software Requirement
In this assignment, you will be using the Logisim circuit drawing software to create a circuit for the problem specified in this task sheet. You must use the Logisim simulator version 2.7.1 to create your circuits. Assignments submitted using other programs will NOT BE ABLE TO BE MARKED due to incompatible file formats.
3. Submission Instructions
You will be required to submit two files electronically via the course assessment submission page. The files will be:
• A digital logic simulator circuit (created using the Logisim software .circ) • A written report (PDF format only)
Filenames for both your files must be prefixed with your student number, first name, last name, and the name of the file. PLEASE DO NOT SUBMIT ZIP (or other) ARCHIVES as they may not be able to be marked.
Your Logisim file would be named:
s123456_FirstName_LastName_Logic_Circuit.circ
Your written report file would be named:
s123456_FirstName_LastName_Report.pdf
Files with filenames that does not adhere to this requirement may NOT be
marked or may attract a mark penalty.
4. Task Description
1007ICT Assignment Trimester 1, 2024
ACME Toy Company is a national supplier of children’s toys. They currently have software to manage their stock inventory but are very worried about hacking and cybersecurity so have decided to move their inventory system to a hardware solution.
You have been tasked to design the digital circuit to help manage their stock inventory and facilitate stock changes in their toy warehouse. The company finds that much of their stock movement happens differently across the year and they want their system to use the month as the main input. Each month is represented as a number from 0 to 11 in the circuit.
8 September
1 February 5 June
10 November
11 December
Stock movement through the months varies and needs to be considered across:
• January (the beginning of the year needs more stock)
• December (the end of the year needs less stock)
• Odd months, February, April, June, August, October (are a bit slower) • Even months, March, May, July, September, November (have slightly
increased activity)
• Month values above 11 are not used and will result in an error displayed
for that input.
The implementation for this part must use only the three basic logic gates (AND, OR, NOT).
• Each AND gate and each OR gate can have only 2 inputs.
• Each NOT gate can have only 1 input.
• No other logic gates or circuits are permitted to be used in your circuit
for Part A.
You are required to implement a circuit where the user (you) can input a value for the month (M) using values (M1, M2, M3 and M4).
The circuit decodes the M1, M2, M3 and M4 values using a decoder (see lecture notes) made up of only the permitted logic gates. There are five (5) needed outputs as noted in Table 1.
1007ICT Assignment Trimester 1, 2024
Table 1: Input and output values for Part A.
M INPUT OUT PUT
Value M1 M2 M3 M4 January Even Odd December Error
month month
0000010000 1000100100 2001001000 3001100100 4010001000 5010100100 6011001000 7011100100 8100001000 9100100100
10 1 0 1 0 0 1 0 0 0 11 1 0 1 1 0 0 0 1 0 12 1 1 0 0 0 0 0 0 1 13 1 1 0 1 0 0 0 0 1 14 1 1 1 0 0 0 0 0 1 15 1 1 1 1 0 0 0 0 1
For Part A, each of the five (5) outputs will be displayed with a single output pin (green circle in Logisim) resulting in 5 outputs for your Part A circuit:
With the Part A circuits in place, the company wants to both keep track of stock
levels and manage any changes to stock across the months.
Stock is managed via pallets of toys in the warehouse, and this varies from no stock (0) to a full warehouse of 15 pallets. You will need to present the stock level on these (0-15) pallets with 4-bit memory.
When new stock arrives, or is sold, the stock levels/memory needs to be updated with any stock changes. These changes across the months are represented by a stock calculator that needs to be coded into the logic of the digital solution to be produced. There is a different stock calculator for undergraduate (1007ICT) and postgraduate (7611ICT) students. Please make sure you use the correct calculator in your circuit.
Programming Help
1007ICT Assignment Trimester 1, 2024
Undergraduate (1007ICT) Stock Calculator
For this part, you will need to implement the 4-bit memory of warehouse stock and add any stock to the warehouse as directed by the stock calculator. The OUTPUTS Columns identifies for each row (January/even month/odd month/December, and error category) the value to add to the stock using an adder unit that you have built. The note shows the decimal value of the addition or subtraction.
This is driven by the output from Part A, i.e. indicating what month is currently being processed. The Error output should light an error LED in Part B.
Examples (based on the above table):
Month = 0 (January special case), stock value is increased by 2.
Month = 5 (June = odd month), stock value is increased by 2
Month = 8 (September = even month), stock value is increased by 1
Month = 11 (December special case), stock value does not change
Month = 14 (Error state), Error signal is generated, stock value does not change
Note this is only a sample of the possible months to aid in understanding the stock calculation table above. Your circuit will need to cover all months and error combinations.
For Part B you will need to add a button that is pressed by you after the Month (M) values have been entered. This is to avoid adding input while you are adjusting the input pins for the M values (M1, M2, M3, M4). You will also need to build your own adder units.
For Part B you must use only the following:
• The three basic logic gates (AND, OR, NOT). Each AND gate and
each OR gate can have only 2 inputs. Each NOT gate can have only 1
• XOR gates with 2 inputs (to build adder/full adder circuits)
• The D FLIP-FLOP circuit from the Logisim circuit library. The prebuilt D
FLIP-FLOP circuit can be used for the current stock level/memory.
• Buttons.
• Constants.
• LED outputs.
Even Month
Month Error
Error signal
浙大学霸代写 加微信 cstutorcs
1007ICT Assignment Trimester 1, 2024
5. Labelling
You must label each circuit and template that you construct with the Logisim Annotation tool and ensure that all the inputs are labelled as instructed in this task sheet. Each circuit page and subcircuit/template must be labelled with:
1. Your name
2. Your student number
3. Anappropriatelabelforeachinput
4. Anappropriatelabelforeachoutput
5. Anappropriatelabelforeachsubcircuit/template
6. Templates/Subcircuits
You will be required to use templates (Logisim calls these subcircuits) to simplify the overall circuit design. Instructions for using templates/subcircuits are available on the course site in the Assessment folder where you downloaded this assignment.
Note that when you create the template/subcircuit you must keep them within your single circuit file. Templates that are linked as separate files may not be able to be marked. To create a new template/subcircuit within your current file, use the Project menu and the Add Circuit menu item.
You are required to create a working and connected template/subcircuit for the following components:
• The decoder
• The Month logic (Table 1)
• Part A circuit (for connecting into the Part B circuit) • A full adder
• 4-bit memory
1007ICT Assignment Trimester 1, 2024
Your report 2 pages maximum must contain the following sections:
1. Your details: Name and student number 2. Screenshots of your circuit diagrams:
i) A screenshot of your whole circuit including both Part A and Part B. This screenshot may include subcircuits/templates.
ii) A screenshot of your Part A circuit that shows the decoder and toy inventory logic sections. This screenshot may include subcircuits/templates.
iii) Ascreenshotoftheinnercircuitryofyourdecoder.Theinnercircuitry refers to the actual logic gates and not the subcircuit/template drawing.
iv) A screenshot of the inner circuitry of your toy inventory logic. The inner circuitry refers to the actual logic gates and not the subcircuit/template drawing.
If you have broken your toy inventory logic up into smaller subcircuits, show the inner circuitry for these also.
3. CircuitFunction:Abrief(maximum300word)descriptionofyourcircuit describing concisely and correctly in your own words how the circuit operates.
Note: Submissions with more than 2 pages, illegible screenshots, and/or more than 300 words for the description may not receive the full marks available.
8. Interview
To be held during the workshop sessions during Weeks 11 and 12. You will be asked to clearly demonstrate your understanding of your circuit and of its operation to your workshop demonstrator. This interview will also serve to receive individual feedback on your work.
Programming Help, Add QQ: 749389476