Cornell University
ECE 4760
Overview and Policy

See also the online Syllabus (also available through the Cornell Class Roster page)

This document is the implicit contract you are agreeing to by taking the course.

ECE 3140 or Permission of Instructor.
You need to know C programming, electronic construction and a fair amount of math for this course.
When in doubt, talk to the instructor.

Labs will be based on web pages, GCC documentation, and PIC MCU documentation.
We will expect you to become completely familiar with detailed MCU information from microchip.

The purpose of this course is to enable students to carry out sophisticated designs of the modern digital systems which now appear in products such as automobiles, appliances and industrial tools. The basis of such systems is the microcontroller, a microcomputer optimized for single-chip system design by possessing many peripheral devices geared to real-time applications. The microcontrollers we will use are the MIcrochip PIC32 series RISC microcontrollers. There is a large design project which is due the last week of classes. There will considerable emphasis on Hardware concurrency: Getting good performance by using all of the concurrently executing co-processors available on the microcontroller chip, including: DMA, five timers, SPI, USART, ADC subsystem, CTMU and others.

This course is a design course. This means that we will expect you to show considerable creativity, flexibility, and motivation.
In particular you will need to:

In other words, we are trying to make it a little like the real world.

Course Work

There will be lab assignments and a final project, plus some consideration of class participation.
The final design project demonstration is due the last week of classes.

The course grade will be calculated as follows:

Laboratory Policies

You are expected to attend your assigned lab period every week and to finish the lab assignment in the alloted time. You must finish the assignment before the end of the alloted time, or you will lose up to 50% of your lab grade. You can, of course, start early on an assignment. All negotiations concerning lab absences due to plant trips or sickness are to be conducted with your lab instructor. For plant trips you must notify your instructor in advance.

During the lab sections in which there is project checkoff:
-- TAs first priority is to check people off.
-- TAs can help people only if there is no one waiting to be checked off.
-- If there are too many people to help, then the TAs will help students in the current section who are trying to finish on time.
-- Only then will there be time to help people from other sections.
Generally, do not expect help during lab sections in which a project checkoff is occurring.

Lab work will be in groups of 2 or 3. All members are expected to become proficient with all aspects of the lab. Where each has prepared design work or code assigned as homework, the group design will involve negotiation. The members of a group may be graded differentially if it becomes obvious that one person is doing the bulk of the work.

Each student in this course is expected to abide by the Cornell University Code of Academic Integrity.
Any work submitted by a student in this course for academic credit will be the student's own work. For this course, collaboration is allowed between partners in a group. Students agree that by taking this course all required papers may be subject to submission for textual similarity review to for the detection of plagiarism. All submitted papers will be included as source documents in the reference database solely for the purpose of detecting plagiarism of such papers. Use of service is subject to the Usage Policy posted on the site.
Examples of allowed/not allowed collaboration:
++ Allowed: All homework and code must be shared within a group.
-- Not Allowed: Sharing of any material between groups. This includes unprotected GitHub or other code repositories.
Unprotected code online will be considered a violation of Cornell academic integrity policy!
++ Allowed: Talking in lab about code with another group.
-- Not Allowed
: Emailing code to another group or using another group's keyboard to type code.
++ Allowed: Showing another group your circuit.
-- Not Allowed: Wiring for another group, or lending them your circuit.
++ Allowed: Talking about the contents of a lab report to another group.
-- Not Allowed
: Copying anything (even one sentence) from any web or print document, unless the source is stated and the quote is short.
++ Allowed: Using code from previous final projects or web sources with detailed attribution.
-- Not Allowed: Using code from previous final projects or web sources without attribution.

All students will abide by Cornell policy on Equal Education and Employment Opportunity.

Association with Cornell, either as a student, faculty, or staff member, involves participation in a free community where all people are recognized and rewarded on the basis of individual performance rather than personal convictions, appearance, preferences (including sexual or affectional orientation), or happenstance of birth. Cornell University's history of diversity and inclusion encourages all students, faculty and staff to support a diverse and inclusive university in which to work, study, teach, research and serve. No person shall be denied admission to any educational program or activity or be denied employment on the basis of any legally prohibited discrimination involving, but not limited to, such factors as race, color, creed, religion, national or ethnic origin, marital status, citizenship, sex, sexual orientation, gender identity or expression, age, disability, or protected veteran status.

Laboratory Reports

Each laboratory assignment requires a written report. You will submit a single report for your group.
The report should be submitted as an electronic document to the TA.

The report should be a concise documentation of the project assigned. The presentation should be arranged so that any reader with technical competence in the subject can easily understand what was done and how it was done. The following report organization is suggested:

  1. Introduction: Give a short explanation of what was done.
  2. Design and Testing Methods: Explain the approach you used for both software and hardware aspects of the assignment. Be sure to include the design of tests whose outcome are convincing to the reader (or to the instructor in the lab) that the requirements of the assignment have been met.
  3. Documentation: Include here drawings and program listings, together with any explanatory comments needed.
  4. Results: How fast was it? How accurate was it? What were the error ranges?
  5. Conclusions: Useability, what you might have done differently, etc. Any comments concerning the assignment, including suggestions for improvement, excuses, and complaints.
  6. Answers to specific questions given in the lab writeups.

Past TAs have expanded on this short outline.
There are also example report and another and another.
But NOTE that this year's reports do not include homework.

Guidlines for student assessment (from ABET guidlines). Final projects will be evaluated by the guidelines given in abilty to design, ability to commmunicate, problem solving, and professional and ethical responsibility.

Access to computers

You and your partner will have use of a PC, microcontroller evaluation board, and peripheral breadboard in Phillips 238 during your assigned lab period. Students from other lab periods may use setups not needed by students attending their assigned lab.

N.B. Machines and file systems sometimes die. You should always back up all your work. There is no excuse for lost work, even if it is because of a compiler or other system error.

Academic Concerns

If you are experiencing undue personal or academic stress at any time during the semester or need to talk with someone about a personal problem or situation, I encourage you to seek support as soon as possible. I am available to talk with you about stresses related to your work in my class. Additionally, I can assist you in reaching out to any one of a wide range of campus resources, including:

DISABILITY-RELATED CONCERNS: Students with either an ongoing or short-term disability are encouraged to contact Student Disability Services (SDS) for a confidential discussion of their need for academic accommodations.SDS is located in 420 CCC building; phone number is 254-4545.